IMS Final Release

# IMS Question and Test Interoperability (QTI): Assessment, Section and Item (ASI) XSD Binding Version 2.2.2

# IMS Final Release
Version Final 1.0

Date Issued: | 27th November, 2017
Latest version: | http://www.imsglobal.org/question/

IPR and Distribution Notices

Recipients of this document are requested to submit, with their comments, notification of any relevant patent claims or other intellectual property rights of which they may be aware that might be infringed by any implementation of the specification set forth in this document, and to provide supporting documentation.

IMS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on IMS's procedures with respect to rights in IMS specifications can be found at the IMS Intellectual Property Rights web page: http://www.imsglobal.org/ipr/imsipr_policyFinal.pdf.

Copyright © 2017 IMS Global Learning Consortium. All Rights Reserved.

Use of this specification to develop products or services is governed by the license with IMS found on the IMS website: http://www.imsglobal.org/speclicense.html.

Permission is granted to all parties to use excerpts from this document as needed in producing requests for proposals.

The limited permissions granted above are perpetual and will not be revoked by IMS or its successors or assigns.

THIS SPECIFICATION IS BEING OFFERED WITHOUT ANY WARRANTY WHATSOEVER, AND IN PARTICULAR, ANY WARRANTY OF NONINFRINGEMENT IS EXPRESSLY DISCLAIMED. ANY USE OF THIS SPECIFICATION SHALL BE MADE ENTIRELY AT THE IMPLEMENTER'S OWN RISK, AND NEITHER THE CONSORTIUM, NOR ANY OF ITS MEMBERS OR SUBMITTERS, SHALL HAVE ANY LIABILITY WHATSOEVER TO ANY IMPLEMENTER OR THIRD PARTY FOR ANY DAMAGES OF ANY NATURE WHATSOEVER, DIRECTLY OR INDIRECTLY, ARISING FROM THE USE OF THIS SPECIFICATION.

Public contributions, comments and questions can be posted here: www.imsglobal.org/forums/ims-glc-public-forums-and-resources.

© 2017 IMS Global Learning Consortium, Inc.
All Rights Reserved.

Trademark information: http://www.imsglobal.org/copyright.html

Document Name: IMS Question and Test Interoperability (QTI): Assessment, Section and Item (ASI) XSD Binding v2.2.2

Revision: 27th November, 2017

toc | top

# Table of Contents

1. Introduction

1.1 Overview of the Binding

1.2 Scope and Context

1.3 Structure of the Document

1.4 Nomenclature

1.5 References

2. UML to XML/XSD Mapping

2.1 Root Attribute UML/XSD Mapping

2.2 Root Class UML/XSD Mapping

2.2.1 AssessmentItem Root Class Mapping

2.2.2 AssessmentSection Root Class Mapping

2.2.3 AssessmentStimulus Root Class Mapping

2.2.4 AssessmentTest Root Class Mapping

2.2.5 OutcomeDeclaration Root Class Mapping

2.2.6 ResponseProcessing Root Class Mapping

2.3 Class UML/XSD Mapping

2.3.1 A Class Mapping

2.3.2 AnyN Class Mapping

2.3.3 AreaMapping Class Mapping

2.3.4 AssessmentItemRef Class Mapping

2.3.5 AssociableHotspot Class Mapping

2.3.6 AssociateInteraction Class Mapping

2.3.7 BDO Class Mapping

2.3.8 BR Class Mapping

2.3.9 BasePromptInteraction Class Mapping

2.3.10 BaseSequence Class Mapping

2.3.11 BaseSequenceFull Class Mapping

2.3.12 BaseSequenceRIdent Class Mapping

2.3.13 BaseSequenceXBase Class Mapping

2.3.14 BlockQuote Class Mapping

2.3.15 BranchRule Class Mapping

2.3.16 Caption Class Mapping

2.3.17 ChoiceInteraction Class Mapping

2.3.18 Col Class Mapping

2.3.19 ColGroup Class Mapping

2.3.20 CorrectResponse Class Mapping

2.3.21 CustomInteraction Class Mapping

2.3.22 CustomOperator Class Mapping

2.3.23 DD Class Mapping

2.3.24 DL Class Mapping

2.3.25 DT Class Mapping

2.3.26 DefaultValue Class Mapping

2.3.27 Div Class Mapping

2.3.28 DrawingInteraction Class Mapping

2.3.29 EndAttemptInteraction Class Mapping

2.3.30 Equal Class Mapping

2.3.31 EqualRounded Class Mapping

2.3.32 ExtendedTextInteraction Class Mapping

2.3.33 FeedbackBlock Class Mapping

2.3.34 FeedbackInline Class Mapping

2.3.35 FieldValue Class Mapping

2.3.36 Gap Class Mapping

2.3.37 GapImg Class Mapping

2.3.38 GapMatchInteraction Class Mapping

2.3.39 GapText Class Mapping

2.3.40 GraphicAssociateInteraction Class Mapping

2.3.41 GraphicGapMatchInteraction Class Mapping

2.3.42 GraphicOrderInteraction Class Mapping

2.3.43 HR Class Mapping

2.3.44 HTMLText Class Mapping

2.3.45 HotText Class Mapping

2.3.46 HotTextInteraction Class Mapping

2.3.47 HotspotChoice Class Mapping

2.3.48 HotspotInteraction Class Mapping

2.3.49 Img Class Mapping

2.3.50 Index Class Mapping

2.3.51 InfoControl Class Mapping

2.3.52 InlineChoice Class Mapping

2.3.53 InlineChoiceInteraction Class Mapping

2.3.54 Inside Class Mapping

2.3.55 InterpolationTable Class Mapping

2.3.56 ItemBody Class Mapping

2.3.57 LI Class Mapping

2.3.58 Label Class Mapping

2.3.59 Logic0toMany Class Mapping

2.3.60 Logic1toMany Class Mapping

2.3.61 LogicPair Class Mapping

2.3.62 LogicSingle Class Mapping

2.3.63 LookupOutcomeValue Class Mapping

2.3.64 Mapping Class Mapping

2.3.65 MatchInteraction Class Mapping

2.3.66 MatchTable Class Mapping

2.3.67 MathOperator Class Mapping

2.3.68 MediaInteraction Class Mapping

2.3.69 ModalFeedback Class Mapping

2.3.70 NumericLogic1toMany Class Mapping

2.3.71 OUL Class Mapping

2.3.72 Object Class Mapping

2.3.73 OrderInteraction Class Mapping

2.3.74 Ordering Class Mapping

2.3.75 OutcomeCondition Class Mapping

2.3.76 OutcomeElse Class Mapping

2.3.77 OutcomeIf Class Mapping

2.3.78 OutcomeProcessing Class Mapping

2.3.79 OutcomeProcessingFragment Class Mapping

2.3.80 PatternMatch Class Mapping

2.3.81 PositionObjectInteraction Class Mapping

2.3.82 PositionObjectStage Class Mapping

2.3.83 Prompt Class Mapping

2.3.84 Q Class Mapping

2.3.85 Repeat Class Mapping

2.3.86 ResponseCondition Class Mapping

2.3.87 ResponseDeclaration Class Mapping

2.3.88 ResponseElse Class Mapping

2.3.89 ResponseIf Class Mapping

2.3.90 ResponseProcessingFragment Class Mapping

2.3.91 RoundTo Class Mapping

2.3.92 RubricBlock Class Mapping

2.3.93 RubricBlockTemplateBlock Class Mapping

2.3.94 RubricBlockTemplateInline Class Mapping

2.3.95 SelectPointInteraction Class Mapping

2.3.96 Selection Class Mapping

2.3.97 SetValue Class Mapping

2.3.98 SimpleAssociableChoice Class Mapping

2.3.99 SimpleChoice Class Mapping

2.3.100 SimpleMatchSet Class Mapping

2.3.101 SliderInteraction Class Mapping

2.3.102 StatsOperator Class Mapping

2.3.103 StimulusBody Class Mapping

2.3.104 StringMatch Class Mapping

2.3.105 Substring Class Mapping

2.3.106 TDH Class Mapping

2.3.107 TR Class Mapping

2.3.108 Table Class Mapping

2.3.109 TablePart Class Mapping

2.3.110 TemplateBlock Class Mapping

2.3.111 TemplateBlockFeedbackBlock Class Mapping

2.3.112 TemplateCondition Class Mapping

2.3.113 TemplateConstraint Class Mapping

2.3.114 TemplateDeclaration Class Mapping

2.3.115 TemplateDefault Class Mapping

2.3.116 TemplateElse Class Mapping

2.3.117 TemplateIf Class Mapping

2.3.118 TemplateInline Class Mapping

2.3.119 TemplateProcessing Class Mapping

2.3.120 TestFeedback Class Mapping

2.3.121 TestPart Class Mapping

2.3.122 TextEntryInteraction Class Mapping

2.3.123 UploadInteraction Class Mapping

2.4 Derived Class UML/XSD Mapping

2.4.1 ARIALevelInteger Class Mapping

2.4.2 AreaMapEntry Class Mapping

2.4.3 AssessmentSectionRef Class Mapping

2.4.4 AssessmentStimulusRef Class Mapping

2.4.5 BaseSequenceXBaseEmpty Class Mapping

2.4.6 BaseValue Class Mapping

2.4.7 Coords Class Mapping

2.4.8 Correct Class Mapping

2.4.9 DataHTML5Extension Class Mapping

2.4.10 Default Class Mapping

2.4.11 EncVariableString Class Mapping

2.4.12 Identifier Class Mapping

2.4.13 InterpolationTableEntry Class Mapping

2.4.14 ItemSessionControl Class Mapping

2.4.15 Length Class Mapping

2.4.16 MapEntry Class Mapping

2.4.17 MapResponse Class Mapping

2.4.18 MatchTableEntry Class Mapping

2.4.19 MathConstant Class Mapping

2.4.20 MimeType Class Mapping

2.4.21 NonNegativeDouble Class Mapping

2.4.22 Number Class Mapping

2.4.23 OutcomeMinMax Class Mapping

2.4.24 Param Class Mapping

2.4.25 PrintedVariable Class Mapping

2.4.26 RandomFloat Class Mapping

2.4.27 RandomInteger Class Mapping

2.4.28 StyleSheet Class Mapping

2.4.29 TestVariables Class Mapping

2.4.30 TimeLimits Class Mapping

2.4.31 UniqueIdentifier Class Mapping

2.4.32 UniqueIdentifierRef Class Mapping

2.4.33 Value Class Mapping

2.4.34 Variable Class Mapping

2.4.35 VariableMapping Class Mapping

2.4.36 VariableString Class Mapping

2.4.37 Weight Class Mapping

2.5 Enumerated Class UML/XSD Mapping

2.6 Enumerated List Class UML/XSD Mapping

2.7 List Class UML/XSD Mapping

2.8 Union Class UML/XSD Mapping

2.9 Primitive Type UML/XSD Mapping

3. Files and Namespaces

3.1 Target Namespace Details

3.2 Imported Namespace Details

3.3 Implicit Namespace Details

4. Description of the XSD

4.1 Root Element Descriptions

4.1.1 "assessmentItem" Root Element Description

4.1.2 "assessmentSection" Root Element Description

4.1.3 "assessmentStimulus" Root Element Description

4.1.4 "assessmentTest" Root Element Description

4.1.5 "outcomeDeclaration" Root Element Description

4.1.6 "responseProcessing" Root Element Description

4.2 Global Element Descriptions

4.2.1 "a" Global Element Description

4.2.2 "abbr" Global Element Description

4.2.3 "acronym" Global Element Description

4.2.4 "address" Global Element Description

4.2.5 "and" Global Element Description

4.2.6 "anyN" Global Element Description

4.2.7 "apip:apipAccessibility" Global Element Description

4.2.8 "areaMapEntry" Global Element Description

4.2.9 "areaMapping" Global Element Description

4.2.10 "qh5:article" Global Element Description

4.2.11 "qh5:aside" Global Element Description

4.2.12 "assessmentItemRef" Global Element Description

4.2.13 "assessmentSectionRef" Global Element Description

4.2.14 "assessmentStimulusRef" Global Element Description

4.2.15 "associableHotspot" Global Element Description

4.2.16 "associateInteraction" Global Element Description

4.2.17 "qh5:audio" Global Element Description

4.2.18 "ssml11:audio" Global Element Description

4.2.19 "b" Global Element Description

4.2.20 "baseValue" Global Element Description

4.2.21 "qh5:bdi" Global Element Description

4.2.22 "bdo" Global Element Description

4.2.23 "big" Global Element Description

4.2.24 "blockquote" Global Element Description

4.2.25 "br" Global Element Description

4.2.26 "branchRule" Global Element Description

4.2.27 "ssml11:break" Global Element Description

4.2.28 "caption" Global Element Description

4.2.29 "choiceInteraction" Global Element Description

4.2.30 "cite" Global Element Description

4.2.31 "code" Global Element Description

4.2.32 "col" Global Element Description

4.2.33 "colgroup" Global Element Description

4.2.34 "containerSize" Global Element Description

4.2.35 "contains" Global Element Description

4.2.36 "correct" Global Element Description

4.2.37 "correctResponse" Global Element Description

4.2.38 "customInteraction" Global Element Description

4.2.39 "customOperator" Global Element Description

4.2.40 "dd" Global Element Description

4.2.41 "default" Global Element Description

4.2.42 "defaultValue" Global Element Description

4.2.43 "delete" Global Element Description

4.2.44 "dfn" Global Element Description

4.2.45 "div" Global Element Description

4.2.46 "divide" Global Element Description

4.2.47 "dl" Global Element Description

4.2.48 "drawingInteraction" Global Element Description

4.2.49 "dt" Global Element Description

4.2.50 "durationGTE" Global Element Description

4.2.51 "durationLT" Global Element Description

4.2.52 "em" Global Element Description

4.2.53 "ssml11:emphasis" Global Element Description

4.2.54 "endAttemptInteraction" Global Element Description

4.2.55 "equal" Global Element Description

4.2.56 "equalRounded" Global Element Description

4.2.57 "exitResponse" Global Element Description

4.2.58 "exitTemplate" Global Element Description

4.2.59 "exitTest" Global Element Description

4.2.60 "extendedTextInteraction" Global Element Description

4.2.61 "feedbackBlock" Global Element Description

4.2.62 "feedbackInline" Global Element Description

4.2.63 "fieldValue" Global Element Description

4.2.64 "qh5:figure" Global Element Description

4.2.65 "qh5:footer" Global Element Description

4.2.66 "gap" Global Element Description

4.2.67 "gapImg" Global Element Description

4.2.68 "gapMatchInteraction" Global Element Description

4.2.69 "gapText" Global Element Description

4.2.70 "gcd" Global Element Description

4.2.71 "graphicAssociateInteraction" Global Element Description

4.2.72 "graphicGapMatchInteraction" Global Element Description

4.2.73 "graphicOrderInteraction" Global Element Description

4.2.74 "gt" Global Element Description

4.2.75 "gte" Global Element Description

4.2.76 "h1" Global Element Description

4.2.77 "h2" Global Element Description

4.2.78 "h3" Global Element Description

4.2.79 "h4" Global Element Description

4.2.80 "h5" Global Element Description

4.2.81 "h6" Global Element Description

4.2.82 "qh5:header" Global Element Description

4.2.83 "hotspotChoice" Global Element Description

4.2.84 "hotspotInteraction" Global Element Description

4.2.85 "hottext" Global Element Description

4.2.86 "hottextInteraction" Global Element Description

4.2.87 "hr" Global Element Description

4.2.88 "i" Global Element Description

4.2.89 "img" Global Element Description

4.2.90 "xi:include" Global Element Description

4.2.91 "index" Global Element Description

4.2.92 "infoControl" Global Element Description

4.2.93 "inlineChoice" Global Element Description

4.2.94 "inlineChoiceInteraction" Global Element Description

4.2.95 "inside" Global Element Description

4.2.96 "integerDivide" Global Element Description

4.2.97 "integerModulus" Global Element Description

4.2.98 "integerToFloat" Global Element Description

4.2.99 "interpolationTable" Global Element Description

4.2.100 "interpolationTableEntry" Global Element Description

4.2.101 "isNull" Global Element Description

4.2.102 "itemBody" Global Element Description

4.2.103 "itemSessionControl" Global Element Description

4.2.104 "kbd" Global Element Description

4.2.105 "qh5:label" Global Element Description

4.2.106 "label" Global Element Description

4.2.107 "lcm" Global Element Description

4.2.108 "li" Global Element Description

4.2.109 "lookupOutcomeValue" Global Element Description

4.2.110 "lt" Global Element Description

4.2.111 "lte" Global Element Description

4.2.112 "mapEntry" Global Element Description

4.2.113 "mapping" Global Element Description

4.2.114 "mapResponse" Global Element Description

4.2.115 "mapResponsePoint" Global Element Description

4.2.116 "ssml11:mark" Global Element Description

4.2.117 "match" Global Element Description

4.2.118 "matchInteraction" Global Element Description

4.2.119 "matchTable" Global Element Description

4.2.120 "matchTableEntry" Global Element Description

4.2.121 "m2:math" Global Element Description

4.2.122 "m3:math" Global Element Description

4.2.123 "mathConstant" Global Element Description

4.2.124 "mathOperator" Global Element Description

4.2.125 "max" Global Element Description

4.2.126 "mediaInteraction" Global Element Description

4.2.127 "member" Global Element Description

4.2.128 "min" Global Element Description

4.2.129 "minInclusive" Global Element Description

4.2.130 "modalFeedback" Global Element Description

4.2.131 "multiple" Global Element Description

4.2.132 "qh5:nav" Global Element Description

4.2.133 "not" Global Element Description

4.2.134 "null" Global Element Description

4.2.135 "numberCorrect" Global Element Description

4.2.136 "numberIncorrect" Global Element Description

4.2.137 "numberPresented" Global Element Description

4.2.138 "numberResponded" Global Element Description

4.2.139 "numberSelected" Global Element Description

4.2.140 "object" Global Element Description

4.2.141 "ol" Global Element Description

4.2.142 "or" Global Element Description

4.2.143 "ordered" Global Element Description

4.2.144 "ordering" Global Element Description

4.2.145 "orderInteraction" Global Element Description

4.2.146 "outcomeCondition" Global Element Description

4.2.147 "outcomeElse" Global Element Description

4.2.148 "outcomeElseIf" Global Element Description

4.2.149 "outcomeIf" Global Element Description

4.2.150 "outcomeMaximum" Global Element Description

4.2.151 "outcomeMinimum" Global Element Description

4.2.152 "outcomeProcessing" Global Element Description

4.2.153 "outcomeProcessingFragment" Global Element Description

4.2.154 "p" Global Element Description

4.2.155 "ssml11:p" Global Element Description

4.2.156 "param" Global Element Description

4.2.157 "patternMatch" Global Element Description

4.2.158 "ssml11:phoneme" Global Element Description

4.2.159 "positionObjectInteraction" Global Element Description

4.2.160 "positionObjectStage" Global Element Description

4.2.161 "power" Global Element Description

4.2.162 "pre" Global Element Description

4.2.163 "preCondition" Global Element Description

4.2.164 "printedVariable" Global Element Description

4.2.165 "product" Global Element Description

4.2.166 "prompt" Global Element Description

4.2.167 "ssml11:prosody" Global Element Description

4.2.168 "q" Global Element Description

4.2.169 "random" Global Element Description

4.2.170 "randomFloat" Global Element Description

4.2.171 "randomInteger" Global Element Description

4.2.172 "repeat" Global Element Description

4.2.173 "responseCondition" Global Element Description

4.2.174 "responseDeclaration" Global Element Description

4.2.175 "responseElse" Global Element Description

4.2.176 "responseElseIf" Global Element Description

4.2.177 "responseIf" Global Element Description

4.2.178 "responseProcessingFragment" Global Element Description

4.2.179 "round" Global Element Description

4.2.180 "roundTo" Global Element Description

4.2.181 "rubricBlock" Global Element Description

4.2.182 "qh5:ruby" Global Element Description

4.2.183 "ssml11:s" Global Element Description

4.2.184 "samp" Global Element Description

4.2.185 "ssml11:say-as" Global Element Description

4.2.186 "qh5:section" Global Element Description

4.2.187 "selection" Global Element Description

4.2.188 "selectPointInteraction" Global Element Description

4.2.189 "setCorrectResponse" Global Element Description

4.2.190 "setDefaultValue" Global Element Description

4.2.191 "setOutcomeValue" Global Element Description

4.2.192 "setTemplateValue" Global Element Description

4.2.193 "simpleAssociableChoice" Global Element Description

4.2.194 "simpleChoice" Global Element Description

4.2.195 "simpleMatchSet" Global Element Description

4.2.196 "sliderInteraction" Global Element Description

4.2.197 "small" Global Element Description

4.2.198 "span" Global Element Description

4.2.199 "ssml11:speak" Global Element Description

4.2.200 "statsOperator" Global Element Description

4.2.201 "stimulusBody" Global Element Description

4.2.202 "stringMatch" Global Element Description

4.2.203 "strong" Global Element Description

4.2.204 "stylesheet" Global Element Description

4.2.205 "sub" Global Element Description

4.2.206 "ssml11:sub" Global Element Description

4.2.207 "substring" Global Element Description

4.2.208 "subtract" Global Element Description

4.2.209 "sum" Global Element Description

4.2.210 "sup" Global Element Description

4.2.211 "table" Global Element Description

4.2.212 "tbody" Global Element Description

4.2.213 "td" Global Element Description

4.2.214 "templateBlock" Global Element Description

4.2.215 "templateCondition" Global Element Description

4.2.216 "templateConstraint" Global Element Description

4.2.217 "templateDeclaration" Global Element Description

4.2.218 "templateDefault" Global Element Description

4.2.219 "templateElse" Global Element Description

4.2.220 "templateElseIf" Global Element Description

4.2.221 "templateIf" Global Element Description

4.2.222 "templateInline" Global Element Description

4.2.223 "templateProcessing" Global Element Description

4.2.224 "testFeedback" Global Element Description

4.2.225 "testPart" Global Element Description

4.2.226 "testVariables" Global Element Description

4.2.227 "textEntryInteraction" Global Element Description

4.2.228 "tfoot" Global Element Description

4.2.229 "th" Global Element Description

4.2.230 "thead" Global Element Description

4.2.231 "timeLimits" Global Element Description

4.2.232 "tr" Global Element Description

4.2.233 "truncate" Global Element Description

4.2.234 "tt" Global Element Description

4.2.235 "ul" Global Element Description

4.2.236 "uploadInteraction" Global Element Description

4.2.237 "value" Global Element Description

4.2.238 "var" Global Element Description

4.2.239 "variable" Global Element Description

4.2.240 "variableMapping" Global Element Description

4.2.241 "qh5:video" Global Element Description

4.2.242 "ssml11:voice" Global Element Description

4.2.243 "weight" Global Element Description

4.3 Attribute Group Descriptions

4.3.1 "abbr.TDH.Attr" Attribute Description

4.3.2 "access.TestFeedback.Attr" Attribute Description

4.3.3 "adaptive.AssessmentItem.Attr" Attribute Description

4.3.4 "align.TDH.Attr" Attribute Description

4.3.5 "allowComment.ItemSessionControl.Attr" Attribute Description

4.3.6 "allowLateSubmission.TimeLimits.Attr" Attribute Description

4.3.7 "allowReview.ItemSessionControl.Attr" Attribute Description

4.3.8 "allowSkipping.ItemSessionControl.Attr" Attribute Description

4.3.9 "alt.Img.Attr" Attribute Description

4.3.10 "aria-controls.BasePromptInteraction.Attr" Attribute Description

4.3.11 "aria-controls.BaseSequence.Attr" Attribute Description

4.3.12 "aria-controls.BaseSequenceFull.Attr" Attribute Description

4.3.13 "aria-controls.BaseSequenceRIdent.Attr" Attribute Description

4.3.14 "aria-controls.BaseSequenceXBase.Attr" Attribute Description

4.3.15 "aria-controls.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.16 "aria-describedby.BasePromptInteraction.Attr" Attribute Description

4.3.17 "aria-describedby.BaseSequence.Attr" Attribute Description

4.3.18 "aria-describedby.BaseSequenceFull.Attr" Attribute Description

4.3.19 "aria-describedby.BaseSequenceRIdent.Attr" Attribute Description

4.3.20 "aria-describedby.BaseSequenceXBase.Attr" Attribute Description

4.3.21 "aria-describedby.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.22 "aria-flowsto.BasePromptInteraction.Attr" Attribute Description

4.3.23 "aria-flowsto.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.24 "aria-flowto.BaseSequence.Attr" Attribute Description

4.3.25 "aria-flowto.BaseSequenceFull.Attr" Attribute Description

4.3.26 "aria-flowto.BaseSequenceRIdent.Attr" Attribute Description

4.3.27 "aria-flowto.BaseSequenceXBase.Attr" Attribute Description

4.3.28 "aria-label.BasePromptInteraction.Attr" Attribute Description

4.3.29 "aria-label.BaseSequence.Attr" Attribute Description

4.3.30 "aria-label.BaseSequenceFull.Attr" Attribute Description

4.3.31 "aria-label.BaseSequenceRIdent.Attr" Attribute Description

4.3.32 "aria-label.BaseSequenceXBase.Attr" Attribute Description

4.3.33 "aria-label.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.34 "aria-labelledby.BasePromptInteraction.Attr" Attribute Description

4.3.35 "aria-labelledby.BaseSequence.Attr" Attribute Description

4.3.36 "aria-labelledby.BaseSequenceFull.Attr" Attribute Description

4.3.37 "aria-labelledby.BaseSequenceRIdent.Attr" Attribute Description

4.3.38 "aria-labelledby.BaseSequenceXBase.Attr" Attribute Description

4.3.39 "aria-labelledby.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.40 "aria-level.BasePromptInteraction.Attr" Attribute Description

4.3.41 "aria-level.BaseSequence.Attr" Attribute Description

4.3.42 "aria-level.BaseSequenceFull.Attr" Attribute Description

4.3.43 "aria-level.BaseSequenceRIdent.Attr" Attribute Description

4.3.44 "aria-level.BaseSequenceXBase.Attr" Attribute Description

4.3.45 "aria-level.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.46 "aria-live.BasePromptInteraction.Attr" Attribute Description

4.3.47 "aria-live.BaseSequence.Attr" Attribute Description

4.3.48 "aria-live.BaseSequenceFull.Attr" Attribute Description

4.3.49 "aria-live.BaseSequenceRIdent.Attr" Attribute Description

4.3.50 "aria-live.BaseSequenceXBase.Attr" Attribute Description

4.3.51 "aria-live.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.52 "aria-orientation.BasePromptInteraction.Attr" Attribute Description

4.3.53 "aria-orientation.BaseSequence.Attr" Attribute Description

4.3.54 "aria-orientation.BaseSequenceFull.Attr" Attribute Description

4.3.55 "aria-orientation.BaseSequenceRIdent.Attr" Attribute Description

4.3.56 "aria-orientation.BaseSequenceXBase.Attr" Attribute Description

4.3.57 "aria-orientation.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.58 "aria-owns.BasePromptInteraction.Attr" Attribute Description

4.3.59 "aria-owns.BaseSequence.Attr" Attribute Description

4.3.60 "aria-owns.BaseSequenceFull.Attr" Attribute Description

4.3.61 "aria-owns.BaseSequenceRIdent.Attr" Attribute Description

4.3.62 "aria-owns.BaseSequenceXBase.Attr" Attribute Description

4.3.63 "aria-owns.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.64 "autostart.MediaInteraction.Attr" Attribute Description

4.3.65 "axis.TDH.Attr" Attribute Description

4.3.66 "base.BasePromptInteraction.Attr" Attribute Description

4.3.67 "base.BaseSequenceFull.Attr" Attribute Description

4.3.68 "base.BaseSequenceXBase.Attr" Attribute Description

4.3.69 "base.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.70 "base.ExtendedTextInteraction.Attr" Attribute Description

4.3.71 "base.PrintedVariable.Attr" Attribute Description

4.3.72 "base.TextEntryInteraction.Attr" Attribute Description

4.3.73 "baseType.BaseValue.Attr" Attribute Description

4.3.74 "baseType.OutcomeDeclaration.Attr" Attribute Description

4.3.75 "baseType.ResponseDeclaration.Attr" Attribute Description

4.3.76 "baseType.TemplateDeclaration.Attr" Attribute Description

4.3.77 "baseType.TestVariables.Attr" Attribute Description

4.3.78 "baseType.Value.Attr" Attribute Description

4.3.79 "baseuri.PrintedVariable.Attr" Attribute Description

4.3.80 "cardinality.OutcomeDeclaration.Attr" Attribute Description

4.3.81 "cardinality.ResponseDeclaration.Attr" Attribute Description

4.3.82 "cardinality.TemplateDeclaration.Attr" Attribute Description

4.3.83 "caseSensitive.MapEntry.Attr" Attribute Description

4.3.84 "caseSensitive.StringMatch.Attr" Attribute Description

4.3.85 "caseSensitive.Substring.Attr" Attribute Description

4.3.86 "category.AssessmentItemRef.Attr" Attribute Description

4.3.87 "centerPoint.PositionObjectInteraction.Attr" Attribute Description

4.3.88 "cite.BlockQuote.Attr" Attribute Description

4.3.89 "cite.Q.Attr" Attribute Description

4.3.90 "class.BasePromptInteraction.Attr" Attribute Description

4.3.91 "class.BaseSequence.Attr" Attribute Description

4.3.92 "class.BaseSequenceFull.Attr" Attribute Description

4.3.93 "class.BaseSequenceRIdent.Attr" Attribute Description

4.3.94 "class.BaseSequenceXBase.Attr" Attribute Description

4.3.95 "class.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.96 "class.CustomOperator.Attr" Attribute Description

4.3.97 "class.ItemBody.Attr" Attribute Description

4.3.98 "class.PrintedVariable.Attr" Attribute Description

4.3.99 "colspan.TDH.Attr" Attribute Description

4.3.100 "coords.AreaMapEntry.Attr" Attribute Description

4.3.101 "coords.AssociableHotspot.Attr" Attribute Description

4.3.102 "coords.HotspotChoice.Attr" Attribute Description

4.3.103 "coords.Inside.Attr" Attribute Description

4.3.104 "coords.MediaInteraction.Attr" Attribute Description

4.3.105 "countAttempt.EndAttemptInteraction.Attr" Attribute Description

4.3.106 "data.Object.Attr" Attribute Description

4.3.107 "dataExtension.BasePromptInteraction.Attr" Attribute Description

4.3.108 "dataExtension.BaseSequence.Attr" Attribute Description

4.3.109 "dataExtension.BaseSequenceFull.Attr" Attribute Description

4.3.110 "dataExtension.BaseSequenceRIdent.Attr" Attribute Description

4.3.111 "dataExtension.BaseSequenceXBase.Attr" Attribute Description

4.3.112 "dataExtension.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.113 "defaultValue.AreaMapping.Attr" Attribute Description

4.3.114 "defaultValue.InterpolationTable.Attr" Attribute Description

4.3.115 "defaultValue.Mapping.Attr" Attribute Description

4.3.116 "defaultValue.MatchTable.Attr" Attribute Description

4.3.117 "definition.CustomOperator.Attr" Attribute Description

4.3.118 "delimiter.PrintedVariable.Attr" Attribute Description

4.3.119 "dir.BasePromptInteraction.Attr" Attribute Description

4.3.120 "dir.BaseSequence.Attr" Attribute Description

4.3.121 "dir.BaseSequenceFull.Attr" Attribute Description

4.3.122 "dir.BaseSequenceRIdent.Attr" Attribute Description

4.3.123 "dir.BaseSequenceXBase.Attr" Attribute Description

4.3.124 "dir.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.125 "dir.ItemBody.Attr" Attribute Description

4.3.126 "excludeCategory.Number.Attr" Attribute Description

4.3.127 "excludeCategory.OutcomeMinMax.Attr" Attribute Description

4.3.128 "excludeCategory.TestVariables.Attr" Attribute Description

4.3.129 "expectedLength.ExtendedTextInteraction.Attr" Attribute Description

4.3.130 "expectedLength.TextEntryInteraction.Attr" Attribute Description

4.3.131 "expectedLines.ExtendedTextInteraction.Attr" Attribute Description

4.3.132 "extension.CustomInteraction.Attr" Attribute Description

4.3.133 "extension.CustomOperator.Attr" Attribute Description

4.3.134 "extension.Ordering.Attr" Attribute Description

4.3.135 "extension.Selection.Attr" Attribute Description

4.3.136 "externalScored.OutcomeDeclaration.Attr" Attribute Description

4.3.137 "field.PrintedVariable.Attr" Attribute Description

4.3.138 "fieldIdentifier.FieldValue.Attr" Attribute Description

4.3.139 "fieldIdentifier.Value.Attr" Attribute Description

4.3.140 "figures.EqualRounded.Attr" Attribute Description

4.3.141 "figures.RoundTo.Attr" Attribute Description

4.3.142 "fixed.AssessmentItemRef.Attr" Attribute Description

4.3.143 "fixed.AssessmentSection.Attr" Attribute Description

4.3.144 "fixed.InlineChoice.Attr" Attribute Description

4.3.145 "fixed.SimpleAssociableChoice.Attr" Attribute Description

4.3.146 "fixed.SimpleChoice.Attr" Attribute Description

4.3.147 "format.ExtendedTextInteraction.Attr" Attribute Description

4.3.148 "format.PrintedVariable.Attr" Attribute Description

4.3.149 "format.TextEntryInteraction.Attr" Attribute Description

4.3.150 "headers.TDH.Attr" Attribute Description

4.3.151 "height.Img.Attr" Attribute Description

4.3.152 "height.Object.Attr" Attribute Description

4.3.153 "hotspotLabel.AssociableHotspot.Attr" Attribute Description

4.3.154 "hotspotLabel.HotspotChoice.Attr" Attribute Description

4.3.155 "href.A.Attr" Attribute Description

4.3.156 "href.AssessmentItemRef.Attr" Attribute Description

4.3.157 "href.AssessmentSectionRef.Attr" Attribute Description

4.3.158 "href.AssessmentStimulusRef.Attr" Attribute Description

4.3.159 "href.StyleSheet.Attr" Attribute Description

4.3.160 "id.BasePromptInteraction.Attr" Attribute Description

4.3.161 "id.BaseSequence.Attr" Attribute Description

4.3.162 "id.BaseSequenceFull.Attr" Attribute Description

4.3.163 "id.BaseSequenceRIdent.Attr" Attribute Description

4.3.164 "id.BaseSequenceXBase.Attr" Attribute Description

4.3.165 "id.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.166 "id.ItemBody.Attr" Attribute Description

4.3.167 "id.PositionObjectStage.Attr" Attribute Description

4.3.168 "id.PrintedVariable.Attr" Attribute Description

4.3.169 "id.SimpleMatchSet.Attr" Attribute Description

4.3.170 "identifier.AssessmentItem.Attr" Attribute Description

4.3.171 "identifier.AssessmentItemRef.Attr" Attribute Description

4.3.172 "identifier.AssessmentSection.Attr" Attribute Description

4.3.173 "identifier.AssessmentSectionRef.Attr" Attribute Description

4.3.174 "identifier.AssessmentStimulus.Attr" Attribute Description

4.3.175 "identifier.AssessmentStimulusRef.Attr" Attribute Description

4.3.176 "identifier.AssessmentTest.Attr" Attribute Description

4.3.177 "identifier.AssociableHotspot.Attr" Attribute Description

4.3.178 "identifier.Correct.Attr" Attribute Description

4.3.179 "identifier.Default.Attr" Attribute Description

4.3.180 "identifier.FeedbackBlock.Attr" Attribute Description

4.3.181 "identifier.FeedbackInline.Attr" Attribute Description

4.3.182 "identifier.Gap.Attr" Attribute Description

4.3.183 "identifier.GapImg.Attr" Attribute Description

4.3.184 "identifier.GapText.Attr" Attribute Description

4.3.185 "identifier.HotText.Attr" Attribute Description

4.3.186 "identifier.HotspotChoice.Attr" Attribute Description

4.3.187 "identifier.InlineChoice.Attr" Attribute Description

4.3.188 "identifier.LookupOutcomeValue.Attr" Attribute Description

4.3.189 "identifier.MapResponse.Attr" Attribute Description

4.3.190 "identifier.ModalFeedback.Attr" Attribute Description

4.3.191 "identifier.OutcomeDeclaration.Attr" Attribute Description

4.3.192 "identifier.PrintedVariable.Attr" Attribute Description

4.3.193 "identifier.ResponseDeclaration.Attr" Attribute Description

4.3.194 "identifier.RubricBlockTemplateBlock.Attr" Attribute Description

4.3.195 "identifier.RubricBlockTemplateInline.Attr" Attribute Description

4.3.196 "identifier.SetValue.Attr" Attribute Description

4.3.197 "identifier.SimpleAssociableChoice.Attr" Attribute Description

4.3.198 "identifier.SimpleChoice.Attr" Attribute Description

4.3.199 "identifier.TemplateBlock.Attr" Attribute Description

4.3.200 "identifier.TemplateBlockFeedbackBlock.Attr" Attribute Description

4.3.201 "identifier.TemplateDeclaration.Attr" Attribute Description

4.3.202 "identifier.TemplateInline.Attr" Attribute Description

4.3.203 "identifier.TestFeedback.Attr" Attribute Description

4.3.204 "identifier.TestPart.Attr" Attribute Description

4.3.205 "identifier.Variable.Attr" Attribute Description

4.3.206 "identifier.Weight.Attr" Attribute Description

4.3.207 "includeBoundary.InterpolationTableEntry.Attr" Attribute Description

4.3.208 "includeCategory.Number.Attr" Attribute Description

4.3.209 "includeCategory.OutcomeMinMax.Attr" Attribute Description

4.3.210 "includeCategory.TestVariables.Attr" Attribute Description

4.3.211 "includeLowerBound.Equal.Attr" Attribute Description

4.3.212 "includeUpperBound.Equal.Attr" Attribute Description

4.3.213 "index.PrintedVariable.Attr" Attribute Description

4.3.214 "interpretation.CorrectResponse.Attr" Attribute Description

4.3.215 "interpretation.DefaultValue.Attr" Attribute Description

4.3.216 "interpretation.OutcomeDeclaration.Attr" Attribute Description

4.3.217 "keepTogether.AssessmentSection.Attr" Attribute Description

4.3.218 "label.AssessmentItem.Attr" Attribute Description

4.3.219 "label.AssessmentStimulus.Attr" Attribute Description

4.3.220 "label.BasePromptInteraction.Attr" Attribute Description

4.3.221 "label.BaseSequence.Attr" Attribute Description

4.3.222 "label.BaseSequenceFull.Attr" Attribute Description

4.3.223 "label.BaseSequenceRIdent.Attr" Attribute Description

4.3.224 "label.BaseSequenceXBase.Attr" Attribute Description

4.3.225 "label.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.226 "label.ItemBody.Attr" Attribute Description

4.3.227 "label.PrintedVariable.Attr" Attribute Description

4.3.228 "language.AssessmentItem.Attr" Attribute Description

4.3.229 "language.AssessmentStimulus.Attr" Attribute Description

4.3.230 "language.BasePromptInteraction.Attr" Attribute Description

4.3.231 "language.BaseSequence.Attr" Attribute Description

4.3.232 "language.BaseSequenceFull.Attr" Attribute Description

4.3.233 "language.BaseSequenceRIdent.Attr" Attribute Description

4.3.234 "language.BaseSequenceXBase.Attr" Attribute Description

4.3.235 "language.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.236 "language.ItemBody.Attr" Attribute Description

4.3.237 "language.PrintedVariable.Attr" Attribute Description

4.3.238 "left.GapImg.Attr" Attribute Description

4.3.239 "longdesc.Img.Attr" Attribute Description

4.3.240 "longInterpretation.OutcomeDeclaration.Attr" Attribute Description

4.3.241 "loop.MediaInteraction.Attr" Attribute Description

4.3.242 "lowerBound.AreaMapping.Attr" Attribute Description

4.3.243 "lowerBound.Mapping.Attr" Attribute Description

4.3.244 "lowerBound.SliderInteraction.Attr" Attribute Description

4.3.245 "mapKey.MapEntry.Attr" Attribute Description

4.3.246 "mappedValue.AreaMapEntry.Attr" Attribute Description

4.3.247 "mappedValue.MapEntry.Attr" Attribute Description

4.3.248 "mappingIndicator.PrintedVariable.Attr" Attribute Description

4.3.249 "masteryValue.OutcomeDeclaration.Attr" Attribute Description

4.3.250 "matchGroup.AssociableHotspot.Attr" Attribute Description

4.3.251 "matchGroup.Gap.Attr" Attribute Description

4.3.252 "matchGroup.GapImg.Attr" Attribute Description

4.3.253 "matchGroup.GapText.Attr" Attribute Description

4.3.254 "matchGroup.SimpleAssociableChoice.Attr" Attribute Description

4.3.255 "matchMax.AssociableHotspot.Attr" Attribute Description

4.3.256 "matchMax.GapImg.Attr" Attribute Description

4.3.257 "matchMax.GapText.Attr" Attribute Description

4.3.258 "matchMax.SimpleAssociableChoice.Attr" Attribute Description

4.3.259 "matchMin.AssociableHotspot.Attr" Attribute Description

4.3.260 "matchMin.GapImg.Attr" Attribute Description

4.3.261 "matchMin.GapText.Attr" Attribute Description

4.3.262 "matchMin.SimpleAssociableChoice.Attr" Attribute Description

4.3.263 "mathVariable.TemplateDeclaration.Attr" Attribute Description

4.3.264 "max.AnyN.Attr" Attribute Description

4.3.265 "max.RandomFloat.Attr" Attribute Description

4.3.266 "max.RandomInteger.Attr" Attribute Description

4.3.267 "maxAssociations.AssociateInteraction.Attr" Attribute Description

4.3.268 "maxAssociations.GapMatchInteraction.Attr" Attribute Description

4.3.269 "maxAssociations.GraphicAssociateInteraction.Attr" Attribute Description

4.3.270 "maxAssociations.GraphicGapMatchInteraction.Attr" Attribute Description

4.3.271 "maxAssociations.MatchInteraction.Attr" Attribute Description

4.3.272 "maxAttempts.ItemSessionControl.Attr" Attribute Description

4.3.273 "maxChoices.ChoiceInteraction.Attr" Attribute Description

4.3.274 "maxChoices.GraphicOrderInteraction.Attr" Attribute Description

4.3.275 "maxChoices.HotTextInteraction.Attr" Attribute Description

4.3.276 "maxChoices.HotspotInteraction.Attr" Attribute Description

4.3.277 "maxChoices.OrderInteraction.Attr" Attribute Description

4.3.278 "maxChoices.PositionObjectInteraction.Attr" Attribute Description

4.3.279 "maxChoices.SelectPointInteraction.Attr" Attribute Description

4.3.280 "maxPlays.MediaInteraction.Attr" Attribute Description

4.3.281 "maxStrings.ExtendedTextInteraction.Attr" Attribute Description

4.3.282 "maxTime.TimeLimits.Attr" Attribute Description

4.3.283 "media.StyleSheet.Attr" Attribute Description

4.3.284 "min.AnyN.Attr" Attribute Description

4.3.285 "min.RandomFloat.Attr" Attribute Description

4.3.286 "min.RandomInteger.Attr" Attribute Description

4.3.287 "minAssociations.AssociateInteraction.Attr" Attribute Description

4.3.288 "minAssociations.GapMatchInteraction.Attr" Attribute Description

4.3.289 "minAssociations.GraphicAssociateInteraction.Attr" Attribute Description

4.3.290 "minAssociations.GraphicGapMatchInteraction.Attr" Attribute Description

4.3.291 "minAssociations.MatchInteraction.Attr" Attribute Description

4.3.292 "minChoices.ChoiceInteraction.Attr" Attribute Description

4.3.293 "minChoices.GraphicOrderInteraction.Attr" Attribute Description

4.3.294 "minChoices.HotTextInteraction.Attr" Attribute Description

4.3.295 "minChoices.HotspotInteraction.Attr" Attribute Description

4.3.296 "minChoices.OrderInteraction.Attr" Attribute Description

4.3.297 "minChoices.PositionObjectInteraction.Attr" Attribute Description

4.3.298 "minChoices.SelectPointInteraction.Attr" Attribute Description

4.3.299 "minPlays.MediaInteraction.Attr" Attribute Description

4.3.300 "minStrings.ExtendedTextInteraction.Attr" Attribute Description

4.3.301 "minTime.TimeLimits.Attr" Attribute Description

4.3.302 "n.Index.Attr" Attribute Description

4.3.303 "name.MathConstant.Attr" Attribute Description

4.3.304 "name.MathOperator.Attr" Attribute Description

4.3.305 "name.Param.Attr" Attribute Description

4.3.306 "name.StatsOperator.Attr" Attribute Description

4.3.307 "navigationMode.TestPart.Attr" Attribute Description

4.3.308 "normalMaximum.OutcomeDeclaration.Attr" Attribute Description

4.3.309 "normalMinimum.OutcomeDeclaration.Attr" Attribute Description

4.3.310 "numberRepeats.Repeat.Attr" Attribute Description

4.3.311 "objectLabel.GapImg.Attr" Attribute Description

4.3.312 "orientation.ChoiceInteraction.Attr" Attribute Description

4.3.313 "orientation.OrderInteraction.Attr" Attribute Description

4.3.314 "orientation.SliderInteraction.Attr" Attribute Description

4.3.315 "outcomeIdentifier.FeedbackBlock.Attr" Attribute Description

4.3.316 "outcomeIdentifier.FeedbackInline.Attr" Attribute Description

4.3.317 "outcomeIdentifier.ModalFeedback.Attr" Attribute Description

4.3.318 "outcomeIdentifier.OutcomeMinMax.Attr" Attribute Description

4.3.319 "outcomeIdentifier.TemplateBlockFeedbackBlock.Attr" Attribute Description

4.3.320 "outcomeIdentifier.TestFeedback.Attr" Attribute Description

4.3.321 "paramVariable.TemplateDeclaration.Attr" Attribute Description

4.3.322 "pattern.PatternMatch.Attr" Attribute Description

4.3.323 "patternMask.ExtendedTextInteraction.Attr" Attribute Description

4.3.324 "patternMask.TextEntryInteraction.Attr" Attribute Description

4.3.325 "placeholderText.ExtendedTextInteraction.Attr" Attribute Description

4.3.326 "placeholderText.TextEntryInteraction.Attr" Attribute Description

4.3.327 "powerForm.PrintedVariable.Attr" Attribute Description

4.3.328 "required.AssessmentItemRef.Attr" Attribute Description

4.3.329 "required.AssessmentSection.Attr" Attribute Description

4.3.330 "required.Gap.Attr" Attribute Description

4.3.331 "required.InlineChoiceInteraction.Attr" Attribute Description

4.3.332 "responseIdentifier.BasePromptInteraction.Attr" Attribute Description

4.3.333 "responseIdentifier.BaseSequenceFull.Attr" Attribute Description

4.3.334 "responseIdentifier.BaseSequenceRIdent.Attr" Attribute Description

4.3.335 "responseIdentifier.EndAttemptInteraction.Attr" Attribute Description

4.3.336 "responseIdentifier.TextEntryInteraction.Attr" Attribute Description

4.3.337 "reverse.SliderInteraction.Attr" Attribute Description

4.3.338 "role.BasePromptInteraction.Attr" Attribute Description

4.3.339 "role.BaseSequence.Attr" Attribute Description

4.3.340 "role.BaseSequenceFull.Attr" Attribute Description

4.3.341 "role.BaseSequenceRIdent.Attr" Attribute Description

4.3.342 "role.BaseSequenceXBase.Attr" Attribute Description

4.3.343 "role.BaseSequenceXBaseEmpty.Attr" Attribute Description

4.3.344 "roundingMode.EqualRounded.Attr" Attribute Description

4.3.345 "roundingMode.RoundTo.Attr" Attribute Description

4.3.346 "rowspan.TDH.Attr" Attribute Description

4.3.347 "scope.TDH.Attr" Attribute Description

4.3.348 "sectionIdentifier.Number.Attr" Attribute Description

4.3.349 "sectionIdentifier.OutcomeMinMax.Attr" Attribute Description

4.3.350 "sectionIdentifier.TestVariables.Attr" Attribute Description

4.3.351 "select.Selection.Attr" Attribute Description

4.3.352 "shape.AreaMapEntry.Attr" Attribute Description

4.3.353 "shape.AssociableHotspot.Attr" Attribute Description

4.3.354 "shape.HotspotChoice.Attr" Attribute Description

4.3.355 "shape.Inside.Attr" Attribute Description

4.3.356 "showFeedback.ItemSessionControl.Attr" Attribute Description

4.3.357 "showHide.AssociableHotspot.Attr" Attribute Description

4.3.358 "showHide.FeedbackBlock.Attr" Attribute Description

4.3.359 "showHide.FeedbackInline.Attr" Attribute Description

4.3.360 "showHide.Gap.Attr" Attribute Description

4.3.361 "showHide.GapImg.Attr" Attribute Description

4.3.362 "showHide.GapText.Attr" Attribute Description

4.3.363 "showHide.HotText.Attr" Attribute Description

4.3.364 "showHide.HotspotChoice.Attr" Attribute Description

4.3.365 "showHide.InlineChoice.Attr" Attribute Description

4.3.366 "showHide.ModalFeedback.Attr" Attribute Description

4.3.367 "showHide.RubricBlockTemplateBlock.Attr" Attribute Description

4.3.368 "showHide.RubricBlockTemplateInline.Attr" Attribute Description

4.3.369 "showHide.SimpleAssociableChoice.Attr" Attribute Description

4.3.370 "showHide.SimpleChoice.Attr" Attribute Description

4.3.371 "showHide.TemplateBlock.Attr" Attribute Description

4.3.372 "showHide.TemplateBlockFeedbackBlock.Attr" Attribute Description

4.3.373 "showHide.TemplateInline.Attr" Attribute Description

4.3.374 "showHide.TestFeedback.Attr" Attribute Description

4.3.375 "showSolution.ItemSessionControl.Attr" Attribute Description

4.3.376 "shuffle.AssociateInteraction.Attr" Attribute Description

4.3.377 "shuffle.ChoiceInteraction.Attr" Attribute Description

4.3.378 "shuffle.GapMatchInteraction.Attr" Attribute Description

4.3.379 "shuffle.InlineChoiceInteraction.Attr" Attribute Description

4.3.380 "shuffle.MatchInteraction.Attr" Attribute Description

4.3.381 "shuffle.OrderInteraction.Attr" Attribute Description

4.3.382 "shuffle.Ordering.Attr" Attribute Description

4.3.383 "sourceIdentifier.VariableMapping.Attr" Attribute Description

4.3.384 "sourceValue.InterpolationTableEntry.Attr" Attribute Description

4.3.385 "sourceValue.MatchTableEntry.Attr" Attribute Description

4.3.386 "span.Col.Attr" Attribute Description

4.3.387 "span.ColGroup.Attr" Attribute Description

4.3.388 "src.Img.Attr" Attribute Description

4.3.389 "step.RandomInteger.Attr" Attribute Description

4.3.390 "step.SliderInteraction.Attr" Attribute Description

4.3.391 "stepLabel.SliderInteraction.Attr" Attribute Description

4.3.392 "stringIdentifier.ExtendedTextInteraction.Attr" Attribute Description

4.3.393 "stringIdentifier.TextEntryInteraction.Attr" Attribute Description

4.3.394 "submissionMode.TestPart.Attr" Attribute Description

4.3.395 "substring.StringMatch.Attr" Attribute Description

4.3.396 "summary.Table.Attr" Attribute Description

4.3.397 "target.BranchRule.Attr" Attribute Description

4.3.398 "targetIdentifier.VariableMapping.Attr" Attribute Description

4.3.399 "targetValue.InterpolationTableEntry.Attr" Attribute Description

4.3.400 "targetValue.MatchTableEntry.Attr" Attribute Description

4.3.401 "template.ResponseProcessing.Attr" Attribute Description

4.3.402 "templateIdentifier.AssociableHotspot.Attr" Attribute Description

4.3.403 "templateIdentifier.Gap.Attr" Attribute Description

4.3.404 "templateIdentifier.GapImg.Attr" Attribute Description

4.3.405 "templateIdentifier.GapText.Attr" Attribute Description

4.3.406 "templateIdentifier.HotText.Attr" Attribute Description

4.3.407 "templateIdentifier.HotspotChoice.Attr" Attribute Description

4.3.408 "templateIdentifier.InlineChoice.Attr" Attribute Description

4.3.409 "templateIdentifier.RubricBlockTemplateBlock.Attr" Attribute Description

4.3.410 "templateIdentifier.RubricBlockTemplateInline.Attr" Attribute Description

4.3.411 "templateIdentifier.SimpleAssociableChoice.Attr" Attribute Description

4.3.412 "templateIdentifier.SimpleChoice.Attr" Attribute Description

4.3.413 "templateIdentifier.TemplateBlock.Attr" Attribute Description

4.3.414 "templateIdentifier.TemplateDefault.Attr" Attribute Description

4.3.415 "templateIdentifier.TemplateInline.Attr" Attribute Description

4.3.416 "templateLocation.ResponseProcessing.Attr" Attribute Description

4.3.417 "timeDependent.AssessmentItem.Attr" Attribute Description

4.3.418 "title.AssessmentItem.Attr" Attribute Description

4.3.419 "title.AssessmentSection.Attr" Attribute Description

4.3.420 "title.AssessmentStimulus.Attr" Attribute Description

4.3.421 "title.AssessmentTest.Attr" Attribute Description

4.3.422 "title.BDO.Attr" Attribute Description

4.3.423 "title.EndAttemptInteraction.Attr" Attribute Description

4.3.424 "title.InfoControl.Attr" Attribute Description

4.3.425 "title.ModalFeedback.Attr" Attribute Description

4.3.426 "title.StyleSheet.Attr" Attribute Description

4.3.427 "title.TestFeedback.Attr" Attribute Description

4.3.428 "tolerance.Equal.Attr" Attribute Description

4.3.429 "toleranceMode.Equal.Attr" Attribute Description

4.3.430 "toolName.AssessmentItem.Attr" Attribute Description

4.3.431 "toolName.AssessmentStimulus.Attr" Attribute Description

4.3.432 "toolName.AssessmentTest.Attr" Attribute Description

4.3.433 "toolVersion.AssessmentItem.Attr" Attribute Description

4.3.434 "toolVersion.AssessmentStimulus.Attr" Attribute Description

4.3.435 "toolVersion.AssessmentTest.Attr" Attribute Description

4.3.436 "top.GapImg.Attr" Attribute Description

4.3.437 "type.A.Attr" Attribute Description

4.3.438 "type.Object.Attr" Attribute Description

4.3.439 "type.Param.Attr" Attribute Description

4.3.440 "type.StyleSheet.Attr" Attribute Description

4.3.441 "type.UploadInteraction.Attr" Attribute Description

4.3.442 "upperBound.AreaMapping.Attr" Attribute Description

4.3.443 "upperBound.Mapping.Attr" Attribute Description

4.3.444 "upperBound.SliderInteraction.Attr" Attribute Description

4.3.445 "use.RubricBlock.Attr" Attribute Description

4.3.446 "validateResponses.ItemSessionControl.Attr" Attribute Description

4.3.447 "valign.TDH.Attr" Attribute Description

4.3.448 "value.Param.Attr" Attribute Description

4.3.449 "value.Weight.Attr" Attribute Description

4.3.450 "valuetype.Param.Attr" Attribute Description

4.3.451 "variableIdentifier.TestVariables.Attr" Attribute Description

4.3.452 "variableIdentifierRef.OutcomeDeclaration.Attr" Attribute Description

4.3.453 "view.OutcomeDeclaration.Attr" Attribute Description

4.3.454 "view.RubricBlock.Attr" Attribute Description

4.3.455 "visible.AssessmentSection.Attr" Attribute Description

4.3.456 "weightIdentifier.OutcomeMinMax.Attr" Attribute Description

4.3.457 "weightIdentifier.TestVariables.Attr" Attribute Description

4.3.458 "weightIdentifier.Variable.Attr" Attribute Description

4.3.459 "width.Img.Attr" Attribute Description

4.3.460 "width.Object.Attr" Attribute Description

4.3.461 "withReplacement.Selection.Attr" Attribute Description

4.4 Root Complex Type Descriptions

4.4.1 AssessmentItem.Type Root Complex Type Description

4.4.2 AssessmentSection.Type Root Complex Type Description

4.4.3 AssessmentStimulus.Type Root Complex Type Description

4.4.4 AssessmentTest.Type Root Complex Type Description

4.4.5 OutcomeDeclaration.Type Root Complex Type Description

4.4.6 ResponseProcessing.Type Root Complex Type Description

4.5 Core Complex Type Descriptions

4.5.1 A.Type Core Complex Type Description

4.5.2 AnyN.Type Core Complex Type Description

4.5.3 AreaMapping.Type Core Complex Type Description

4.5.4 AssessmentItemRef.Type Core Complex Type Description

4.5.5 AssociableHotspot.Type Core Complex Type Description

4.5.6 AssociateInteraction.Type Core Complex Type Description

4.5.7 BDO.Type Core Complex Type Description

4.5.8 BR.Type Core Complex Type Description

4.5.9 BasePromptInteraction.Type Core Complex Type Description

4.5.10 BaseSequence.Type Core Complex Type Description

4.5.11 BaseSequenceFull.Type Core Complex Type Description

4.5.12 BaseSequenceRIdent.Type Core Complex Type Description

4.5.13 BaseSequenceXBase.Type Core Complex Type Description

4.5.14 BlockQuote.Type Core Complex Type Description

4.5.15 BranchRule.Type Core Complex Type Description

4.5.16 Caption.Type Core Complex Type Description

4.5.17 ChoiceInteraction.Type Core Complex Type Description

4.5.18 Col.Type Core Complex Type Description

4.5.19 ColGroup.Type Core Complex Type Description

4.5.20 CorrectResponse.Type Core Complex Type Description

4.5.21 CustomInteraction.Type Core Complex Type Description

4.5.22 CustomOperator.Type Core Complex Type Description

4.5.23 DD.Type Core Complex Type Description

4.5.24 DL.Type Core Complex Type Description

4.5.25 DT.Type Core Complex Type Description

4.5.26 DefaultValue.Type Core Complex Type Description

4.5.27 Div.Type Core Complex Type Description

* "ssmlGroup" Local Element Description

4.5.28 DrawingInteraction.Type Core Complex Type Description

4.5.29 EndAttemptInteraction.Type Core Complex Type Description

4.5.30 Equal.Type Core Complex Type Description

4.5.31 EqualRounded.Type Core Complex Type Description

4.5.32 ExtendedTextInteraction.Type Core Complex Type Description

4.5.33 FeedbackBlock.Type Core Complex Type Description

4.5.34 FeedbackInline.Type Core Complex Type Description

4.5.35 FieldValue.Type Core Complex Type Description

4.5.36 Gap.Type Core Complex Type Description

4.5.37 GapImg.Type Core Complex Type Description

4.5.38 GapMatchInteraction.Type Core Complex Type Description

4.5.39 GapText.Type Core Complex Type Description

4.5.40 GraphicAssociateInteraction.Type Core Complex Type Description

4.5.41 GraphicGapMatchInteraction.Type Core Complex Type Description

4.5.42 GraphicOrderInteraction.Type Core Complex Type Description

4.5.43 HR.Type Core Complex Type Description

4.5.44 HTMLText.Type Core Complex Type Description

4.5.45 HotText.Type Core Complex Type Description

4.5.46 HotTextInteraction.Type Core Complex Type Description

4.5.47 HotspotChoice.Type Core Complex Type Description

4.5.48 HotspotInteraction.Type Core Complex Type Description

4.5.49 Img.Type Core Complex Type Description

4.5.50 Index.Type Core Complex Type Description

4.5.51 InfoControl.Type Core Complex Type Description

4.5.52 InlineChoice.Type Core Complex Type Description

4.5.53 InlineChoiceInteraction.Type Core Complex Type Description

4.5.54 Inside.Type Core Complex Type Description

4.5.55 InterpolationTable.Type Core Complex Type Description

4.5.56 ItemBody.Type Core Complex Type Description

4.5.57 LI.Type Core Complex Type Description

4.5.58 Label.Type Core Complex Type Description

4.5.59 Logic0toMany.Type Core Complex Type Description

4.5.60 Logic1toMany.Type Core Complex Type Description

4.5.61 LogicPair.Type Core Complex Type Description

4.5.62 LogicSingle.Type Core Complex Type Description

4.5.63 LookupOutcomeValue.Type Core Complex Type Description

4.5.64 Mapping.Type Core Complex Type Description

4.5.65 MatchInteraction.Type Core Complex Type Description

4.5.66 MatchTable.Type Core Complex Type Description

4.5.67 MathOperator.Type Core Complex Type Description

4.5.68 MediaInteraction.Type Core Complex Type Description

4.5.69 ModalFeedback.Type Core Complex Type Description

4.5.70 NumericLogic1toMany.Type Core Complex Type Description

4.5.71 OUL.Type Core Complex Type Description

4.5.72 Object.Type Core Complex Type Description

4.5.73 OrderInteraction.Type Core Complex Type Description

4.5.74 Ordering.Type Core Complex Type Description

4.5.75 OutcomeCondition.Type Core Complex Type Description

4.5.76 OutcomeElse.Type Core Complex Type Description

4.5.77 OutcomeIf.Type Core Complex Type Description

4.5.78 OutcomeProcessing.Type Core Complex Type Description

4.5.79 OutcomeProcessingFragment.Type Core Complex Type Description

4.5.80 PatternMatch.Type Core Complex Type Description

4.5.81 PositionObjectInteraction.Type Core Complex Type Description

4.5.82 PositionObjectStage.Type Core Complex Type Description

4.5.83 Prompt.Type Core Complex Type Description

4.5.84 Q.Type Core Complex Type Description

4.5.85 Repeat.Type Core Complex Type Description

4.5.86 ResponseCondition.Type Core Complex Type Description

4.5.87 ResponseDeclaration.Type Core Complex Type Description

4.5.88 ResponseElse.Type Core Complex Type Description

4.5.89 ResponseIf.Type Core Complex Type Description

4.5.90 ResponseProcessingFragment.Type Core Complex Type Description

4.5.91 RoundTo.Type Core Complex Type Description

4.5.92 RubricBlock.Type Core Complex Type Description

* "templateBlock" Local Element Description

* "templateInline" Local Element Description

4.5.93 RubricBlockTemplateBlock.Type Core Complex Type Description

* "templateBlock" Local Element Description

4.5.94 RubricBlockTemplateInline.Type Core Complex Type Description

4.5.95 SelectPointInteraction.Type Core Complex Type Description

4.5.96 Selection.Type Core Complex Type Description

4.5.97 SetValue.Type Core Complex Type Description

4.5.98 SimpleAssociableChoice.Type Core Complex Type Description

4.5.99 SimpleChoice.Type Core Complex Type Description

4.5.100 SimpleMatchSet.Type Core Complex Type Description

4.5.101 SliderInteraction.Type Core Complex Type Description

4.5.102 StatsOperator.Type Core Complex Type Description

4.5.103 StimulusBody.Type Core Complex Type Description

4.5.104 StringMatch.Type Core Complex Type Description

4.5.105 Substring.Type Core Complex Type Description

4.5.106 TDH.Type Core Complex Type Description

4.5.107 TR.Type Core Complex Type Description

4.5.108 Table.Type Core Complex Type Description

4.5.109 TablePart.Type Core Complex Type Description

4.5.110 TemplateBlock.Type Core Complex Type Description

* "feedbackBlock" Local Element Description

4.5.111 TemplateBlockFeedbackBlock.Type Core Complex Type Description

* "feedbackBlock" Local Element Description

4.5.112 TemplateCondition.Type Core Complex Type Description

4.5.113 TemplateConstraint.Type Core Complex Type Description

4.5.114 TemplateDeclaration.Type Core Complex Type Description

4.5.115 TemplateDefault.Type Core Complex Type Description

4.5.116 TemplateElse.Type Core Complex Type Description

4.5.117 TemplateIf.Type Core Complex Type Description

4.5.118 TemplateInline.Type Core Complex Type Description

4.5.119 TemplateProcessing.Type Core Complex Type Description

4.5.120 TestFeedback.Type Core Complex Type Description

4.5.121 TestPart.Type Core Complex Type Description

4.5.122 TextEntryInteraction.Type Core Complex Type Description

4.5.123 UploadInteraction.Type Core Complex Type Description

4.6 Derived Complex Type Descriptions

4.6.1 AreaMapEntry.Type Derived Complex Type Description

4.6.2 AssessmentSectionRef.Type Derived Complex Type Description

4.6.3 AssessmentStimulusRef.Type Derived Complex Type Description

4.6.4 BaseSequenceXBaseEmpty.Type Derived Complex Type Description

4.6.5 BaseValue.Type Derived Complex Type Description

4.6.6 Correct.Type Derived Complex Type Description

4.6.7 Default.Type Derived Complex Type Description

4.6.8 InterpolationTableEntry.Type Derived Complex Type Description

4.6.9 ItemSessionControl.Type Derived Complex Type Description

4.6.10 MapEntry.Type Derived Complex Type Description

4.6.11 MapResponse.Type Derived Complex Type Description

4.6.12 MatchTableEntry.Type Derived Complex Type Description

4.6.13 MathConstant.Type Derived Complex Type Description

4.6.14 Number.Type Derived Complex Type Description

4.6.15 OutcomeMinMax.Type Derived Complex Type Description

4.6.16 Param.Type Derived Complex Type Description

4.6.17 PrintedVariable.Type Derived Complex Type Description

4.6.18 RandomFloat.Type Derived Complex Type Description

4.6.19 RandomInteger.Type Derived Complex Type Description

4.6.20 StyleSheet.Type Derived Complex Type Description

4.6.21 TestVariables.Type Derived Complex Type Description

4.6.22 TimeLimits.Type Derived Complex Type Description

4.6.23 Value.Type Derived Complex Type Description

4.6.24 Variable.Type Derived Complex Type Description

4.6.25 VariableMapping.Type Derived Complex Type Description

4.6.26 Weight.Type Derived Complex Type Description

4.7 Simple Type Descriptions

4.7.1 ARIALevelInteger.Type Simple Type Description

4.7.2 Coords.Type Simple Type Description

4.7.3 EncVariableString.Type Simple Type Description

4.7.4 Identifier.Type Simple Type Description

4.7.5 IdentifierList.Type Simple Type Description

4.7.6 IntegerList.Type Simple Type Description

4.7.7 Length.Type Simple Type Description

4.7.8 MimeType.Type Simple Type Description

4.7.9 NonNegativeDouble.Type Simple Type Description

4.7.10 StringList.Type Simple Type Description

4.7.11 ToleranceList.Type Simple Type Description

4.7.12 UniqueIdentifier.Type Simple Type Description

4.7.13 UniqueIdentifierRef.Type Simple Type Description

4.7.14 VariableString.Type Simple Type Description

4.7.15 View.Type Simple Type Description

5. The Schematron Rules

5.1 Rules Imposing the Unordered Class Definition

5.2 The Constrained Namespace Extension Rule Definitions

5.3 The Explicit Rule Definitions

5.3.1 RULE_SET_GENERAL_1

5.3.2 RULE_SET_GENERAL_2

5.3.3 RULE_SET_INTERACTION_01

5.3.4 RULE_SET_INTERACTION_02

5.3.5 RULE_SET_INTERACTION_03

5.3.6 RULE_SET_INTERACTION_04

5.3.7 RULE_SET_INTERACTION_05

5.3.8 RULE_SET_INTERACTION_06

5.3.9 RULE_SET_INTERACTION_07

5.3.10 RULE_SET_INTERACTION_08

5.3.11 RULE_SET_INTERACTION_09

5.3.12 RULE_SET_INTERACTION_10

5.3.13 RULE_SET_INTERACTION_11

5.3.14 RULE_SET_INTERACTION_12

5.3.15 RULE_SET_INTERACTION_13

5.3.16 RULE_SET_INTERACTION_14

5.3.17 RULE_SET_INTERACTION_15

5.3.18 RULE_SET_INTERACTION_16

5.3.19 RULE_SET_INTERACTION_17

5.3.20 RULE_SET_INTERACTION_18

5.3.21 RULE_SET_INTERACTION_19

5.3.22 RULE_SET_INTERACTION-RELATED_1

5.3.23 RULE_SET_INTERACTION-RELATED_2

5.3.24 RULE_SET_INTERACTION-RELATED_3

5.3.25 RULE_SET_INTERACTION-RELATED_4

5.3.26 RULE_SET_SPECIFIC_CLASS_1

5.3.27 RULE_SET_SPECIFIC_CLASS_2

6. Extending the XSD

6.1 Section Selection ComplexType Extension

6.2 Section Ordering ComplexType Extension

6.3 Custom Interaction ComplexType Extension

6.4 Custom Operator ComplexType Extension

6.5 The 'data-*' Attribute

7. ASI Packaging

7.1 Packaging Items

7.2 Packaging Sections

7.3 Packaging Tests

7.4 Packaging Item and Test Fragments

7.5 Packaging Assessment Stimulii

7.6 Packaging Response Processing Templates

7.7 Packaging Outcome Declarations

7.8 Metadata for the QTI Package

7.8.1 Manifest and Resource Level Metadata

7.8.2 Curriculum Standards Metadata

Appendix A XSD Binding Terms

A1 XSD Binding Description Terms

A1.1 UML/XSD Attribute Mapping Table Definition

A1.2 UML/XSD Class Mapping Table Definition

A1.3 UML/XSD Enumerated and Enumerated List Class Mapping Table Definition

A1.4 UML/XSD List and Union Mapping Tables Definition

A1.5 UML/XSD Primitive Types Mapping Table Definition

A1.6 XSD Description for an Element

A1.7 XSD Description for a Complex Type

A1.8 XSD Description for a Simple Type

A1.9 XSD Description for an Attribute Group

A1.10 XSD Description for an Attribute

A1.11 VDEX Description for an External Vocabulary

Appendix B XSD Listing

B1 QTI ASI XSD Listing

About this Document

List of Contributors

Revision History

toc | top

# List of Figures

Figure 4.1.1 XSD Description for the "assessmentItem" Root Element

Figure 4.1.2 XSD Description for the "assessmentSection" Root Element

Figure 4.1.3 XSD Description for the "assessmentStimulus" Root Element

Figure 4.1.4 XSD Description for the "assessmentTest" Root Element

Figure 4.1.5 XSD Description for the "outcomeDeclaration" Root Element

Figure 4.1.6 XSD Description for the "responseProcessing" Root Element

Figure 4.2.1 XSD Description for the "a" Global Element

Figure 4.2.2 XSD Description for the "abbr" Global Element

Figure 4.2.3 XSD Description for the "acronym" Global Element

Figure 4.2.4 XSD Description for the "address" Global Element

Figure 4.2.5 XSD Description for the "and" Global Element

Figure 4.2.6 XSD Description for the "anyN" Global Element

Figure 4.2.7 XSD Description for the "apip:apipAccessibility" Global Element

Figure 4.2.8 XSD Description for the "areaMapEntry" Global Element

Figure 4.2.9 XSD Description for the "areaMapping" Global Element

Figure 4.2.10 XSD Description for the "qh5:article" Global Element

Figure 4.2.11 XSD Description for the "qh5:aside" Global Element

Figure 4.2.12 XSD Description for the "assessmentItemRef" Global Element

Figure 4.2.13 XSD Description for the "assessmentSectionRef" Global Element

Figure 4.2.14 XSD Description for the "assessmentStimulusRef" Global Element

Figure 4.2.15 XSD Description for the "associableHotspot" Global Element

Figure 4.2.16 XSD Description for the "associateInteraction" Global Element

Figure 4.2.17 XSD Description for the "qh5:audio" Global Element

Figure 4.2.18 XSD Description for the "ssml11:audio" Global Element

Figure 4.2.19 XSD Description for the "b" Global Element

Figure 4.2.20 XSD Description for the "baseValue" Global Element

Figure 4.2.21 XSD Description for the "qh5:bdi" Global Element

Figure 4.2.22 XSD Description for the "bdo" Global Element

Figure 4.2.23 XSD Description for the "big" Global Element

Figure 4.2.24 XSD Description for the "blockquote" Global Element

Figure 4.2.25 XSD Description for the "br" Global Element

Figure 4.2.26 XSD Description for the "branchRule" Global Element

Figure 4.2.27 XSD Description for the "ssml11:break" Global Element

Figure 4.2.28 XSD Description for the "caption" Global Element

Figure 4.2.29 XSD Description for the "choiceInteraction" Global Element

Figure 4.2.30 XSD Description for the "cite" Global Element

Figure 4.2.31 XSD Description for the "code" Global Element

Figure 4.2.32 XSD Description for the "col" Global Element

Figure 4.2.33 XSD Description for the "colgroup" Global Element

Figure 4.2.34 XSD Description for the "containerSize" Global Element

Figure 4.2.35 XSD Description for the "contains" Global Element

Figure 4.2.36 XSD Description for the "correct" Global Element

Figure 4.2.37 XSD Description for the "correctResponse" Global Element

Figure 4.2.38 XSD Description for the "customInteraction" Global Element

Figure 4.2.39 XSD Description for the "customOperator" Global Element

Figure 4.2.40 XSD Description for the "dd" Global Element

Figure 4.2.41 XSD Description for the "default" Global Element

Figure 4.2.42 XSD Description for the "defaultValue" Global Element

Figure 4.2.43 XSD Description for the "delete" Global Element

Figure 4.2.44 XSD Description for the "dfn" Global Element

Figure 4.2.45 XSD Description for the "div" Global Element

Figure 4.2.46 XSD Description for the "divide" Global Element

Figure 4.2.47 XSD Description for the "dl" Global Element

Figure 4.2.48 XSD Description for the "drawingInteraction" Global Element

Figure 4.2.49 XSD Description for the "dt" Global Element

Figure 4.2.50 XSD Description for the "durationGTE" Global Element

Figure 4.2.51 XSD Description for the "durationLT" Global Element

Figure 4.2.52 XSD Description for the "em" Global Element

Figure 4.2.53 XSD Description for the "ssml11:emphasis" Global Element

Figure 4.2.54 XSD Description for the "endAttemptInteraction" Global Element

Figure 4.2.55 XSD Description for the "equal" Global Element

Figure 4.2.56 XSD Description for the "equalRounded" Global Element

Figure 4.2.57 XSD Description for the "exitResponse" Global Element

Figure 4.2.58 XSD Description for the "exitTemplate" Global Element

Figure 4.2.59 XSD Description for the "exitTest" Global Element

Figure 4.2.60 XSD Description for the "extendedTextInteraction" Global Element

Figure 4.2.61 XSD Description for the "feedbackBlock" Global Element

Figure 4.2.62 XSD Description for the "feedbackInline" Global Element

Figure 4.2.63 XSD Description for the "fieldValue" Global Element

Figure 4.2.64 XSD Description for the "qh5:figure" Global Element

Figure 4.2.65 XSD Description for the "qh5:footer" Global Element

Figure 4.2.66 XSD Description for the "gap" Global Element

Figure 4.2.67 XSD Description for the "gapImg" Global Element

Figure 4.2.68 XSD Description for the "gapMatchInteraction" Global Element

Figure 4.2.69 XSD Description for the "gapText" Global Element

Figure 4.2.70 XSD Description for the "gcd" Global Element

Figure 4.2.71 XSD Description for the "graphicAssociateInteraction" Global Element

Figure 4.2.72 XSD Description for the "graphicGapMatchInteraction" Global Element

Figure 4.2.73 XSD Description for the "graphicOrderInteraction" Global Element

Figure 4.2.74 XSD Description for the "gt" Global Element

Figure 4.2.75 XSD Description for the "gte" Global Element

Figure 4.2.76 XSD Description for the "h1" Global Element

Figure 4.2.77 XSD Description for the "h2" Global Element

Figure 4.2.78 XSD Description for the "h3" Global Element

Figure 4.2.79 XSD Description for the "h4" Global Element

Figure 4.2.80 XSD Description for the "h5" Global Element

Figure 4.2.81 XSD Description for the "h6" Global Element

Figure 4.2.82 XSD Description for the "qh5:header" Global Element

Figure 4.2.83 XSD Description for the "hotspotChoice" Global Element

Figure 4.2.84 XSD Description for the "hotspotInteraction" Global Element

Figure 4.2.85 XSD Description for the "hottext" Global Element

Figure 4.2.86 XSD Description for the "hottextInteraction" Global Element

Figure 4.2.87 XSD Description for the "hr" Global Element

Figure 4.2.88 XSD Description for the "i" Global Element

Figure 4.2.89 XSD Description for the "img" Global Element

Figure 4.2.90 XSD Description for the "xi:include" Global Element

Figure 4.2.91 XSD Description for the "index" Global Element

Figure 4.2.92 XSD Description for the "infoControl" Global Element

Figure 4.2.93 XSD Description for the "inlineChoice" Global Element

Figure 4.2.94 XSD Description for the "inlineChoiceInteraction" Global Element

Figure 4.2.95 XSD Description for the "inside" Global Element

Figure 4.2.96 XSD Description for the "integerDivide" Global Element

Figure 4.2.97 XSD Description for the "integerModulus" Global Element

Figure 4.2.98 XSD Description for the "integerToFloat" Global Element

Figure 4.2.99 XSD Description for the "interpolationTable" Global Element

Figure 4.2.100 XSD Description for the "interpolationTableEntry" Global Element

Figure 4.2.101 XSD Description for the "isNull" Global Element

Figure 4.2.102 XSD Description for the "itemBody" Global Element

Figure 4.2.103 XSD Description for the "itemSessionControl" Global Element

Figure 4.2.104 XSD Description for the "kbd" Global Element

Figure 4.2.105 XSD Description for the "qh5:label" Global Element

Figure 4.2.106 XSD Description for the "label" Global Element

Figure 4.2.107 XSD Description for the "lcm" Global Element

Figure 4.2.108 XSD Description for the "li" Global Element

Figure 4.2.109 XSD Description for the "lookupOutcomeValue" Global Element

Figure 4.2.110 XSD Description for the "lt" Global Element

Figure 4.2.111 XSD Description for the "lte" Global Element

Figure 4.2.112 XSD Description for the "mapEntry" Global Element

Figure 4.2.113 XSD Description for the "mapping" Global Element

Figure 4.2.114 XSD Description for the "mapResponse" Global Element

Figure 4.2.115 XSD Description for the "mapResponsePoint" Global Element

Figure 4.2.116 XSD Description for the "ssml11:mark" Global Element

Figure 4.2.117 XSD Description for the "match" Global Element

Figure 4.2.118 XSD Description for the "matchInteraction" Global Element

Figure 4.2.119 XSD Description for the "matchTable" Global Element

Figure 4.2.120 XSD Description for the "matchTableEntry" Global Element

Figure 4.2.121 XSD Description for the "m2:math" Global Element

Figure 4.2.122 XSD Description for the "m3:math" Global Element

Figure 4.2.123 XSD Description for the "mathConstant" Global Element

Figure 4.2.124 XSD Description for the "mathOperator" Global Element

Figure 4.2.125 XSD Description for the "max" Global Element

Figure 4.2.126 XSD Description for the "mediaInteraction" Global Element

Figure 4.2.127 XSD Description for the "member" Global Element

Figure 4.2.128 XSD Description for the "min" Global Element

Figure 4.2.129 XSD Description for the "minInclusive" Global Element

Figure 4.2.130 XSD Description for the "modalFeedback" Global Element

Figure 4.2.131 XSD Description for the "multiple" Global Element

Figure 4.2.132 XSD Description for the "qh5:nav" Global Element

Figure 4.2.133 XSD Description for the "not" Global Element

Figure 4.2.134 XSD Description for the "null" Global Element

Figure 4.2.135 XSD Description for the "numberCorrect" Global Element

Figure 4.2.136 XSD Description for the "numberIncorrect" Global Element

Figure 4.2.137 XSD Description for the "numberPresented" Global Element

Figure 4.2.138 XSD Description for the "numberResponded" Global Element

Figure 4.2.139 XSD Description for the "numberSelected" Global Element

Figure 4.2.140 XSD Description for the "object" Global Element

Figure 4.2.141 XSD Description for the "ol" Global Element

Figure 4.2.142 XSD Description for the "or" Global Element

Figure 4.2.143 XSD Description for the "ordered" Global Element

Figure 4.2.144 XSD Description for the "ordering" Global Element

Figure 4.2.145 XSD Description for the "orderInteraction" Global Element

Figure 4.2.146 XSD Description for the "outcomeCondition" Global Element

Figure 4.2.147 XSD Description for the "outcomeElse" Global Element

Figure 4.2.148 XSD Description for the "outcomeElseIf" Global Element

Figure 4.2.149 XSD Description for the "outcomeIf" Global Element

Figure 4.2.150 XSD Description for the "outcomeMaximum" Global Element

Figure 4.2.151 XSD Description for the "outcomeMinimum" Global Element

Figure 4.2.152 XSD Description for the "outcomeProcessing" Global Element

Figure 4.2.153 XSD Description for the "outcomeProcessingFragment" Global Element

Figure 4.2.154 XSD Description for the "p" Global Element

Figure 4.2.155 XSD Description for the "ssml11:p" Global Element

Figure 4.2.156 XSD Description for the "param" Global Element

Figure 4.2.157 XSD Description for the "patternMatch" Global Element

Figure 4.2.158 XSD Description for the "ssml11:phoneme" Global Element

Figure 4.2.159 XSD Description for the "positionObjectInteraction" Global Element

Figure 4.2.160 XSD Description for the "positionObjectStage" Global Element

Figure 4.2.161 XSD Description for the "power" Global Element

Figure 4.2.162 XSD Description for the "pre" Global Element

Figure 4.2.163 XSD Description for the "preCondition" Global Element

Figure 4.2.164 XSD Description for the "printedVariable" Global Element

Figure 4.2.165 XSD Description for the "product" Global Element

Figure 4.2.166 XSD Description for the "prompt" Global Element

Figure 4.2.167 XSD Description for the "ssml11:prosody" Global Element

Figure 4.2.168 XSD Description for the "q" Global Element

Figure 4.2.169 XSD Description for the "random" Global Element

Figure 4.2.170 XSD Description for the "randomFloat" Global Element

Figure 4.2.171 XSD Description for the "randomInteger" Global Element

Figure 4.2.172 XSD Description for the "repeat" Global Element

Figure 4.2.173 XSD Description for the "responseCondition" Global Element

Figure 4.2.174 XSD Description for the "responseDeclaration" Global Element

Figure 4.2.175 XSD Description for the "responseElse" Global Element

Figure 4.2.176 XSD Description for the "responseElseIf" Global Element

Figure 4.2.177 XSD Description for the "responseIf" Global Element

Figure 4.2.178 XSD Description for the "responseProcessingFragment" Global Element

Figure 4.2.179 XSD Description for the "round" Global Element

Figure 4.2.180 XSD Description for the "roundTo" Global Element

Figure 4.2.181 XSD Description for the "rubricBlock" Global Element

Figure 4.2.182 XSD Description for the "qh5:ruby" Global Element

Figure 4.2.183 XSD Description for the "ssml11:s" Global Element

Figure 4.2.184 XSD Description for the "samp" Global Element

Figure 4.2.185 XSD Description for the "ssml11:say-as" Global Element

Figure 4.2.186 XSD Description for the "qh5:section" Global Element

Figure 4.2.187 XSD Description for the "selection" Global Element

Figure 4.2.188 XSD Description for the "selectPointInteraction" Global Element

Figure 4.2.189 XSD Description for the "setCorrectResponse" Global Element

Figure 4.2.190 XSD Description for the "setDefaultValue" Global Element

Figure 4.2.191 XSD Description for the "setOutcomeValue" Global Element

Figure 4.2.192 XSD Description for the "setTemplateValue" Global Element

Figure 4.2.193 XSD Description for the "simpleAssociableChoice" Global Element

Figure 4.2.194 XSD Description for the "simpleChoice" Global Element

Figure 4.2.195 XSD Description for the "simpleMatchSet" Global Element

Figure 4.2.196 XSD Description for the "sliderInteraction" Global Element

Figure 4.2.197 XSD Description for the "small" Global Element

Figure 4.2.198 XSD Description for the "span" Global Element

Figure 4.2.199 XSD Description for the "ssml11:speak" Global Element

Figure 4.2.200 XSD Description for the "statsOperator" Global Element

Figure 4.2.201 XSD Description for the "stimulusBody" Global Element

Figure 4.2.202 XSD Description for the "stringMatch" Global Element

Figure 4.2.203 XSD Description for the "strong" Global Element

Figure 4.2.204 XSD Description for the "stylesheet" Global Element

Figure 4.2.205 XSD Description for the "sub" Global Element

Figure 4.2.206 XSD Description for the "ssml11:sub" Global Element

Figure 4.2.207 XSD Description for the "substring" Global Element

Figure 4.2.208 XSD Description for the "subtract" Global Element

Figure 4.2.209 XSD Description for the "sum" Global Element

Figure 4.2.210 XSD Description for the "sup" Global Element

Figure 4.2.211 XSD Description for the "table" Global Element

Figure 4.2.212 XSD Description for the "tbody" Global Element

Figure 4.2.213 XSD Description for the "td" Global Element

Figure 4.2.214 XSD Description for the "templateBlock" Global Element

Figure 4.2.215 XSD Description for the "templateCondition" Global Element

Figure 4.2.216 XSD Description for the "templateConstraint" Global Element

Figure 4.2.217 XSD Description for the "templateDeclaration" Global Element

Figure 4.2.218 XSD Description for the "templateDefault" Global Element

Figure 4.2.219 XSD Description for the "templateElse" Global Element

Figure 4.2.220 XSD Description for the "templateElseIf" Global Element

Figure 4.2.221 XSD Description for the "templateIf" Global Element

Figure 4.2.222 XSD Description for the "templateInline" Global Element

Figure 4.2.223 XSD Description for the "templateProcessing" Global Element

Figure 4.2.224 XSD Description for the "testFeedback" Global Element

Figure 4.2.225 XSD Description for the "testPart" Global Element

Figure 4.2.226 XSD Description for the "testVariables" Global Element

Figure 4.2.227 XSD Description for the "textEntryInteraction" Global Element

Figure 4.2.228 XSD Description for the "tfoot" Global Element

Figure 4.2.229 XSD Description for the "th" Global Element

Figure 4.2.230 XSD Description for the "thead" Global Element

Figure 4.2.231 XSD Description for the "timeLimits" Global Element

Figure 4.2.232 XSD Description for the "tr" Global Element

Figure 4.2.233 XSD Description for the "truncate" Global Element

Figure 4.2.234 XSD Description for the "tt" Global Element

Figure 4.2.235 XSD Description for the "ul" Global Element

Figure 4.2.236 XSD Description for the "uploadInteraction" Global Element

Figure 4.2.237 XSD Description for the "value" Global Element

Figure 4.2.238 XSD Description for the "var" Global Element

Figure 4.2.239 XSD Description for the "variable" Global Element

Figure 4.2.240 XSD Description for the "variableMapping" Global Element

Figure 4.2.241 XSD Description for the "qh5:video" Global Element

Figure 4.2.242 XSD Description for the "ssml11:voice" Global Element

Figure 4.2.243 XSD Description for the "weight" Global Element

Figure 4.3.1 XSD Description for the "abbr.TDH.Attr" Attribute Group

Figure 4.3.2 XSD Description for the "access.TestFeedback.Attr" Attribute Group

Figure 4.3.3 XSD Description for the "adaptive.AssessmentItem.Attr" Attribute Group

Figure 4.3.4 XSD Description for the "align.TDH.Attr" Attribute Group

Figure 4.3.5 XSD Description for the "allowComment.ItemSessionControl.Attr" Attribute Group

Figure 4.3.6 XSD Description for the "allowLateSubmission.TimeLimits.Attr" Attribute Group

Figure 4.3.7 XSD Description for the "allowReview.ItemSessionControl.Attr" Attribute Group

Figure 4.3.8 XSD Description for the "allowSkipping.ItemSessionControl.Attr" Attribute Group

Figure 4.3.9 XSD Description for the "alt.Img.Attr" Attribute Group

Figure 4.3.10 XSD Description for the "aria-controls.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.11 XSD Description for the "aria-controls.BaseSequence.Attr" Attribute Group

Figure 4.3.12 XSD Description for the "aria-controls.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.13 XSD Description for the "aria-controls.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.14 XSD Description for the "aria-controls.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.15 XSD Description for the "aria-controls.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.16 XSD Description for the "aria-describedby.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.17 XSD Description for the "aria-describedby.BaseSequence.Attr" Attribute Group

Figure 4.3.18 XSD Description for the "aria-describedby.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.19 XSD Description for the "aria-describedby.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.20 XSD Description for the "aria-describedby.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.21 XSD Description for the "aria-describedby.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.22 XSD Description for the "aria-flowsto.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.23 XSD Description for the "aria-flowsto.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.24 XSD Description for the "aria-flowto.BaseSequence.Attr" Attribute Group

Figure 4.3.25 XSD Description for the "aria-flowto.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.26 XSD Description for the "aria-flowto.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.27 XSD Description for the "aria-flowto.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.28 XSD Description for the "aria-label.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.29 XSD Description for the "aria-label.BaseSequence.Attr" Attribute Group

Figure 4.3.30 XSD Description for the "aria-label.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.31 XSD Description for the "aria-label.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.32 XSD Description for the "aria-label.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.33 XSD Description for the "aria-label.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.34 XSD Description for the "aria-labelledby.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.35 XSD Description for the "aria-labelledby.BaseSequence.Attr" Attribute Group

Figure 4.3.36 XSD Description for the "aria-labelledby.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.37 XSD Description for the "aria-labelledby.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.38 XSD Description for the "aria-labelledby.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.39 XSD Description for the "aria-labelledby.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.40 XSD Description for the "aria-level.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.41 XSD Description for the "aria-level.BaseSequence.Attr" Attribute Group

Figure 4.3.42 XSD Description for the "aria-level.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.43 XSD Description for the "aria-level.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.44 XSD Description for the "aria-level.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.45 XSD Description for the "aria-level.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.46 XSD Description for the "aria-live.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.47 XSD Description for the "aria-live.BaseSequence.Attr" Attribute Group

Figure 4.3.48 XSD Description for the "aria-live.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.49 XSD Description for the "aria-live.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.50 XSD Description for the "aria-live.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.51 XSD Description for the "aria-live.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.52 XSD Description for the "aria-orientation.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.53 XSD Description for the "aria-orientation.BaseSequence.Attr" Attribute Group

Figure 4.3.54 XSD Description for the "aria-orientation.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.55 XSD Description for the "aria-orientation.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.56 XSD Description for the "aria-orientation.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.57 XSD Description for the "aria-orientation.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.58 XSD Description for the "aria-owns.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.59 XSD Description for the "aria-owns.BaseSequence.Attr" Attribute Group

Figure 4.3.60 XSD Description for the "aria-owns.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.61 XSD Description for the "aria-owns.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.62 XSD Description for the "aria-owns.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.63 XSD Description for the "aria-owns.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.64 XSD Description for the "autostart.MediaInteraction.Attr" Attribute Group

Figure 4.3.65 XSD Description for the "axis.TDH.Attr" Attribute Group

Figure 4.3.66 XSD Description for the "base.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.67 XSD Description for the "base.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.68 XSD Description for the "base.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.69 XSD Description for the "base.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.70 XSD Description for the "base.ExtendedTextInteraction.Attr" Attribute Group

Figure 4.3.71 XSD Description for the "base.PrintedVariable.Attr" Attribute Group

Figure 4.3.72 XSD Description for the "base.TextEntryInteraction.Attr" Attribute Group

Figure 4.3.73 XSD Description for the "baseType.BaseValue.Attr" Attribute Group

Figure 4.3.74 XSD Description for the "baseType.OutcomeDeclaration.Attr" Attribute Group

Figure 4.3.75 XSD Description for the "baseType.ResponseDeclaration.Attr" Attribute Group

Figure 4.3.76 XSD Description for the "baseType.TemplateDeclaration.Attr" Attribute Group

Figure 4.3.77 XSD Description for the "baseType.TestVariables.Attr" Attribute Group

Figure 4.3.78 XSD Description for the "baseType.Value.Attr" Attribute Group

Figure 4.3.79 XSD Description for the "baseuri.PrintedVariable.Attr" Attribute Group

Figure 4.3.80 XSD Description for the "cardinality.OutcomeDeclaration.Attr" Attribute Group

Figure 4.3.81 XSD Description for the "cardinality.ResponseDeclaration.Attr" Attribute Group

Figure 4.3.82 XSD Description for the "cardinality.TemplateDeclaration.Attr" Attribute Group

Figure 4.3.83 XSD Description for the "caseSensitive.MapEntry.Attr" Attribute Group

Figure 4.3.84 XSD Description for the "caseSensitive.StringMatch.Attr" Attribute Group

Figure 4.3.85 XSD Description for the "caseSensitive.Substring.Attr" Attribute Group

Figure 4.3.86 XSD Description for the "category.AssessmentItemRef.Attr" Attribute Group

Figure 4.3.87 XSD Description for the "centerPoint.PositionObjectInteraction.Attr" Attribute Group

Figure 4.3.88 XSD Description for the "cite.BlockQuote.Attr" Attribute Group

Figure 4.3.89 XSD Description for the "cite.Q.Attr" Attribute Group

Figure 4.3.90 XSD Description for the "class.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.91 XSD Description for the "class.BaseSequence.Attr" Attribute Group

Figure 4.3.92 XSD Description for the "class.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.93 XSD Description for the "class.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.94 XSD Description for the "class.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.95 XSD Description for the "class.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.96 XSD Description for the "class.CustomOperator.Attr" Attribute Group

Figure 4.3.97 XSD Description for the "class.ItemBody.Attr" Attribute Group

Figure 4.3.98 XSD Description for the "class.PrintedVariable.Attr" Attribute Group

Figure 4.3.99 XSD Description for the "colspan.TDH.Attr" Attribute Group

Figure 4.3.100 XSD Description for the "coords.AreaMapEntry.Attr" Attribute Group

Figure 4.3.101 XSD Description for the "coords.AssociableHotspot.Attr" Attribute Group

Figure 4.3.102 XSD Description for the "coords.HotspotChoice.Attr" Attribute Group

Figure 4.3.103 XSD Description for the "coords.Inside.Attr" Attribute Group

Figure 4.3.104 XSD Description for the "coords.MediaInteraction.Attr" Attribute Group

Figure 4.3.105 XSD Description for the "countAttempt.EndAttemptInteraction.Attr" Attribute Group

Figure 4.3.106 XSD Description for the "data.Object.Attr" Attribute Group

Figure 4.3.107 XSD Description for the "dataExtension.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.108 XSD Description for the "dataExtension.BaseSequence.Attr" Attribute Group

Figure 4.3.109 XSD Description for the "dataExtension.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.110 XSD Description for the "dataExtension.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.111 XSD Description for the "dataExtension.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.112 XSD Description for the "dataExtension.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.113 XSD Description for the "defaultValue.AreaMapping.Attr" Attribute Group

Figure 4.3.114 XSD Description for the "defaultValue.InterpolationTable.Attr" Attribute Group

Figure 4.3.115 XSD Description for the "defaultValue.Mapping.Attr" Attribute Group

Figure 4.3.116 XSD Description for the "defaultValue.MatchTable.Attr" Attribute Group

Figure 4.3.117 XSD Description for the "definition.CustomOperator.Attr" Attribute Group

Figure 4.3.118 XSD Description for the "delimiter.PrintedVariable.Attr" Attribute Group

Figure 4.3.119 XSD Description for the "dir.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.120 XSD Description for the "dir.BaseSequence.Attr" Attribute Group

Figure 4.3.121 XSD Description for the "dir.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.122 XSD Description for the "dir.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.123 XSD Description for the "dir.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.124 XSD Description for the "dir.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.125 XSD Description for the "dir.ItemBody.Attr" Attribute Group

Figure 4.3.126 XSD Description for the "excludeCategory.Number.Attr" Attribute Group

Figure 4.3.127 XSD Description for the "excludeCategory.OutcomeMinMax.Attr" Attribute Group

Figure 4.3.128 XSD Description for the "excludeCategory.TestVariables.Attr" Attribute Group

Figure 4.3.129 XSD Description for the "expectedLength.ExtendedTextInteraction.Attr" Attribute Group

Figure 4.3.130 XSD Description for the "expectedLength.TextEntryInteraction.Attr" Attribute Group

Figure 4.3.131 XSD Description for the "expectedLines.ExtendedTextInteraction.Attr" Attribute Group

Figure 4.3.132 XSD Description for the "extension.CustomInteraction.Attr" Attribute Group

Figure 4.3.133 XSD Description for the "extension.CustomOperator.Attr" Attribute Group

Figure 4.3.134 XSD Description for the "extension.Ordering.Attr" Attribute Group

Figure 4.3.135 XSD Description for the "extension.Selection.Attr" Attribute Group

Figure 4.3.136 XSD Description for the "externalScored.OutcomeDeclaration.Attr" Attribute Group

Figure 4.3.137 XSD Description for the "field.PrintedVariable.Attr" Attribute Group

Figure 4.3.138 XSD Description for the "fieldIdentifier.FieldValue.Attr" Attribute Group

Figure 4.3.139 XSD Description for the "fieldIdentifier.Value.Attr" Attribute Group

Figure 4.3.140 XSD Description for the "figures.EqualRounded.Attr" Attribute Group

Figure 4.3.141 XSD Description for the "figures.RoundTo.Attr" Attribute Group

Figure 4.3.142 XSD Description for the "fixed.AssessmentItemRef.Attr" Attribute Group

Figure 4.3.143 XSD Description for the "fixed.AssessmentSection.Attr" Attribute Group

Figure 4.3.144 XSD Description for the "fixed.InlineChoice.Attr" Attribute Group

Figure 4.3.145 XSD Description for the "fixed.SimpleAssociableChoice.Attr" Attribute Group

Figure 4.3.146 XSD Description for the "fixed.SimpleChoice.Attr" Attribute Group

Figure 4.3.147 XSD Description for the "format.ExtendedTextInteraction.Attr" Attribute Group

Figure 4.3.148 XSD Description for the "format.PrintedVariable.Attr" Attribute Group

Figure 4.3.149 XSD Description for the "format.TextEntryInteraction.Attr" Attribute Group

Figure 4.3.150 XSD Description for the "headers.TDH.Attr" Attribute Group

Figure 4.3.151 XSD Description for the "height.Img.Attr" Attribute Group

Figure 4.3.152 XSD Description for the "height.Object.Attr" Attribute Group

Figure 4.3.153 XSD Description for the "hotspotLabel.AssociableHotspot.Attr" Attribute Group

Figure 4.3.154 XSD Description for the "hotspotLabel.HotspotChoice.Attr" Attribute Group

Figure 4.3.155 XSD Description for the "href.A.Attr" Attribute Group

Figure 4.3.156 XSD Description for the "href.AssessmentItemRef.Attr" Attribute Group

Figure 4.3.157 XSD Description for the "href.AssessmentSectionRef.Attr" Attribute Group

Figure 4.3.158 XSD Description for the "href.AssessmentStimulusRef.Attr" Attribute Group

Figure 4.3.159 XSD Description for the "href.StyleSheet.Attr" Attribute Group

Figure 4.3.160 XSD Description for the "id.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.161 XSD Description for the "id.BaseSequence.Attr" Attribute Group

Figure 4.3.162 XSD Description for the "id.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.163 XSD Description for the "id.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.164 XSD Description for the "id.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.165 XSD Description for the "id.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.166 XSD Description for the "id.ItemBody.Attr" Attribute Group

Figure 4.3.167 XSD Description for the "id.PositionObjectStage.Attr" Attribute Group

Figure 4.3.168 XSD Description for the "id.PrintedVariable.Attr" Attribute Group

Figure 4.3.169 XSD Description for the "id.SimpleMatchSet.Attr" Attribute Group

Figure 4.3.170 XSD Description for the "identifier.AssessmentItem.Attr" Attribute Group

Figure 4.3.171 XSD Description for the "identifier.AssessmentItemRef.Attr" Attribute Group

Figure 4.3.172 XSD Description for the "identifier.AssessmentSection.Attr" Attribute Group

Figure 4.3.173 XSD Description for the "identifier.AssessmentSectionRef.Attr" Attribute Group

Figure 4.3.174 XSD Description for the "identifier.AssessmentStimulus.Attr" Attribute Group

Figure 4.3.175 XSD Description for the "identifier.AssessmentStimulusRef.Attr" Attribute Group

Figure 4.3.176 XSD Description for the "identifier.AssessmentTest.Attr" Attribute Group

Figure 4.3.177 XSD Description for the "identifier.AssociableHotspot.Attr" Attribute Group

Figure 4.3.178 XSD Description for the "identifier.Correct.Attr" Attribute Group

Figure 4.3.179 XSD Description for the "identifier.Default.Attr" Attribute Group

Figure 4.3.180 XSD Description for the "identifier.FeedbackBlock.Attr" Attribute Group

Figure 4.3.181 XSD Description for the "identifier.FeedbackInline.Attr" Attribute Group

Figure 4.3.182 XSD Description for the "identifier.Gap.Attr" Attribute Group

Figure 4.3.183 XSD Description for the "identifier.GapImg.Attr" Attribute Group

Figure 4.3.184 XSD Description for the "identifier.GapText.Attr" Attribute Group

Figure 4.3.185 XSD Description for the "identifier.HotText.Attr" Attribute Group

Figure 4.3.186 XSD Description for the "identifier.HotspotChoice.Attr" Attribute Group

Figure 4.3.187 XSD Description for the "identifier.InlineChoice.Attr" Attribute Group

Figure 4.3.188 XSD Description for the "identifier.LookupOutcomeValue.Attr" Attribute Group

Figure 4.3.189 XSD Description for the "identifier.MapResponse.Attr" Attribute Group

Figure 4.3.190 XSD Description for the "identifier.ModalFeedback.Attr" Attribute Group

Figure 4.3.191 XSD Description for the "identifier.OutcomeDeclaration.Attr" Attribute Group

Figure 4.3.192 XSD Description for the "identifier.PrintedVariable.Attr" Attribute Group

Figure 4.3.193 XSD Description for the "identifier.ResponseDeclaration.Attr" Attribute Group

Figure 4.3.194 XSD Description for the "identifier.RubricBlockTemplateBlock.Attr" Attribute Group

Figure 4.3.195 XSD Description for the "identifier.RubricBlockTemplateInline.Attr" Attribute Group

Figure 4.3.196 XSD Description for the "identifier.SetValue.Attr" Attribute Group

Figure 4.3.197 XSD Description for the "identifier.SimpleAssociableChoice.Attr" Attribute Group

Figure 4.3.198 XSD Description for the "identifier.SimpleChoice.Attr" Attribute Group

Figure 4.3.199 XSD Description for the "identifier.TemplateBlock.Attr" Attribute Group

Figure 4.3.200 XSD Description for the "identifier.TemplateBlockFeedbackBlock.Attr" Attribute Group

Figure 4.3.201 XSD Description for the "identifier.TemplateDeclaration.Attr" Attribute Group

Figure 4.3.202 XSD Description for the "identifier.TemplateInline.Attr" Attribute Group

Figure 4.3.203 XSD Description for the "identifier.TestFeedback.Attr" Attribute Group

Figure 4.3.204 XSD Description for the "identifier.TestPart.Attr" Attribute Group

Figure 4.3.205 XSD Description for the "identifier.Variable.Attr" Attribute Group

Figure 4.3.206 XSD Description for the "identifier.Weight.Attr" Attribute Group

Figure 4.3.207 XSD Description for the "includeBoundary.InterpolationTableEntry.Attr" Attribute Group

Figure 4.3.208 XSD Description for the "includeCategory.Number.Attr" Attribute Group

Figure 4.3.209 XSD Description for the "includeCategory.OutcomeMinMax.Attr" Attribute Group

Figure 4.3.210 XSD Description for the "includeCategory.TestVariables.Attr" Attribute Group

Figure 4.3.211 XSD Description for the "includeLowerBound.Equal.Attr" Attribute Group

Figure 4.3.212 XSD Description for the "includeUpperBound.Equal.Attr" Attribute Group

Figure 4.3.213 XSD Description for the "index.PrintedVariable.Attr" Attribute Group

Figure 4.3.214 XSD Description for the "interpretation.CorrectResponse.Attr" Attribute Group

Figure 4.3.215 XSD Description for the "interpretation.DefaultValue.Attr" Attribute Group

Figure 4.3.216 XSD Description for the "interpretation.OutcomeDeclaration.Attr" Attribute Group

Figure 4.3.217 XSD Description for the "keepTogether.AssessmentSection.Attr" Attribute Group

Figure 4.3.218 XSD Description for the "label.AssessmentItem.Attr" Attribute Group

Figure 4.3.219 XSD Description for the "label.AssessmentStimulus.Attr" Attribute Group

Figure 4.3.220 XSD Description for the "label.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.221 XSD Description for the "label.BaseSequence.Attr" Attribute Group

Figure 4.3.222 XSD Description for the "label.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.223 XSD Description for the "label.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.224 XSD Description for the "label.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.225 XSD Description for the "label.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.226 XSD Description for the "label.ItemBody.Attr" Attribute Group

Figure 4.3.227 XSD Description for the "label.PrintedVariable.Attr" Attribute Group

Figure 4.3.228 XSD Description for the "language.AssessmentItem.Attr" Attribute Group

Figure 4.3.229 XSD Description for the "language.AssessmentStimulus.Attr" Attribute Group

Figure 4.3.230 XSD Description for the "language.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.231 XSD Description for the "language.BaseSequence.Attr" Attribute Group

Figure 4.3.232 XSD Description for the "language.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.233 XSD Description for the "language.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.234 XSD Description for the "language.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.235 XSD Description for the "language.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.236 XSD Description for the "language.ItemBody.Attr" Attribute Group

Figure 4.3.237 XSD Description for the "language.PrintedVariable.Attr" Attribute Group

Figure 4.3.238 XSD Description for the "left.GapImg.Attr" Attribute Group

Figure 4.3.239 XSD Description for the "longdesc.Img.Attr" Attribute Group

Figure 4.3.240 XSD Description for the "longInterpretation.OutcomeDeclaration.Attr" Attribute Group

Figure 4.3.241 XSD Description for the "loop.MediaInteraction.Attr" Attribute Group

Figure 4.3.242 XSD Description for the "lowerBound.AreaMapping.Attr" Attribute Group

Figure 4.3.243 XSD Description for the "lowerBound.Mapping.Attr" Attribute Group

Figure 4.3.244 XSD Description for the "lowerBound.SliderInteraction.Attr" Attribute Group

Figure 4.3.245 XSD Description for the "mapKey.MapEntry.Attr" Attribute Group

Figure 4.3.246 XSD Description for the "mappedValue.AreaMapEntry.Attr" Attribute Group

Figure 4.3.247 XSD Description for the "mappedValue.MapEntry.Attr" Attribute Group

Figure 4.3.248 XSD Description for the "mappingIndicator.PrintedVariable.Attr" Attribute Group

Figure 4.3.249 XSD Description for the "masteryValue.OutcomeDeclaration.Attr" Attribute Group

Figure 4.3.250 XSD Description for the "matchGroup.AssociableHotspot.Attr" Attribute Group

Figure 4.3.251 XSD Description for the "matchGroup.Gap.Attr" Attribute Group

Figure 4.3.252 XSD Description for the "matchGroup.GapImg.Attr" Attribute Group

Figure 4.3.253 XSD Description for the "matchGroup.GapText.Attr" Attribute Group

Figure 4.3.254 XSD Description for the "matchGroup.SimpleAssociableChoice.Attr" Attribute Group

Figure 4.3.255 XSD Description for the "matchMax.AssociableHotspot.Attr" Attribute Group

Figure 4.3.256 XSD Description for the "matchMax.GapImg.Attr" Attribute Group

Figure 4.3.257 XSD Description for the "matchMax.GapText.Attr" Attribute Group

Figure 4.3.258 XSD Description for the "matchMax.SimpleAssociableChoice.Attr" Attribute Group

Figure 4.3.259 XSD Description for the "matchMin.AssociableHotspot.Attr" Attribute Group

Figure 4.3.260 XSD Description for the "matchMin.GapImg.Attr" Attribute Group

Figure 4.3.261 XSD Description for the "matchMin.GapText.Attr" Attribute Group

Figure 4.3.262 XSD Description for the "matchMin.SimpleAssociableChoice.Attr" Attribute Group

Figure 4.3.263 XSD Description for the "mathVariable.TemplateDeclaration.Attr" Attribute Group

Figure 4.3.264 XSD Description for the "max.AnyN.Attr" Attribute Group

Figure 4.3.265 XSD Description for the "max.RandomFloat.Attr" Attribute Group

Figure 4.3.266 XSD Description for the "max.RandomInteger.Attr" Attribute Group

Figure 4.3.267 XSD Description for the "maxAssociations.AssociateInteraction.Attr" Attribute Group

Figure 4.3.268 XSD Description for the "maxAssociations.GapMatchInteraction.Attr" Attribute Group

Figure 4.3.269 XSD Description for the "maxAssociations.GraphicAssociateInteraction.Attr" Attribute Group

Figure 4.3.270 XSD Description for the "maxAssociations.GraphicGapMatchInteraction.Attr" Attribute Group

Figure 4.3.271 XSD Description for the "maxAssociations.MatchInteraction.Attr" Attribute Group

Figure 4.3.272 XSD Description for the "maxAttempts.ItemSessionControl.Attr" Attribute Group

Figure 4.3.273 XSD Description for the "maxChoices.ChoiceInteraction.Attr" Attribute Group

Figure 4.3.274 XSD Description for the "maxChoices.GraphicOrderInteraction.Attr" Attribute Group

Figure 4.3.275 XSD Description for the "maxChoices.HotTextInteraction.Attr" Attribute Group

Figure 4.3.276 XSD Description for the "maxChoices.HotspotInteraction.Attr" Attribute Group

Figure 4.3.277 XSD Description for the "maxChoices.OrderInteraction.Attr" Attribute Group

Figure 4.3.278 XSD Description for the "maxChoices.PositionObjectInteraction.Attr" Attribute Group

Figure 4.3.279 XSD Description for the "maxChoices.SelectPointInteraction.Attr" Attribute Group

Figure 4.3.280 XSD Description for the "maxPlays.MediaInteraction.Attr" Attribute Group

Figure 4.3.281 XSD Description for the "maxStrings.ExtendedTextInteraction.Attr" Attribute Group

Figure 4.3.282 XSD Description for the "maxTime.TimeLimits.Attr" Attribute Group

Figure 4.3.283 XSD Description for the "media.StyleSheet.Attr" Attribute Group

Figure 4.3.284 XSD Description for the "min.AnyN.Attr" Attribute Group

Figure 4.3.285 XSD Description for the "min.RandomFloat.Attr" Attribute Group

Figure 4.3.286 XSD Description for the "min.RandomInteger.Attr" Attribute Group

Figure 4.3.287 XSD Description for the "minAssociations.AssociateInteraction.Attr" Attribute Group

Figure 4.3.288 XSD Description for the "minAssociations.GapMatchInteraction.Attr" Attribute Group

Figure 4.3.289 XSD Description for the "minAssociations.GraphicAssociateInteraction.Attr" Attribute Group

Figure 4.3.290 XSD Description for the "minAssociations.GraphicGapMatchInteraction.Attr" Attribute Group

Figure 4.3.291 XSD Description for the "minAssociations.MatchInteraction.Attr" Attribute Group

Figure 4.3.292 XSD Description for the "minChoices.ChoiceInteraction.Attr" Attribute Group

Figure 4.3.293 XSD Description for the "minChoices.GraphicOrderInteraction.Attr" Attribute Group

Figure 4.3.294 XSD Description for the "minChoices.HotTextInteraction.Attr" Attribute Group

Figure 4.3.295 XSD Description for the "minChoices.HotspotInteraction.Attr" Attribute Group

Figure 4.3.296 XSD Description for the "minChoices.OrderInteraction.Attr" Attribute Group

Figure 4.3.297 XSD Description for the "minChoices.PositionObjectInteraction.Attr" Attribute Group

Figure 4.3.298 XSD Description for the "minChoices.SelectPointInteraction.Attr" Attribute Group

Figure 4.3.299 XSD Description for the "minPlays.MediaInteraction.Attr" Attribute Group

Figure 4.3.300 XSD Description for the "minStrings.ExtendedTextInteraction.Attr" Attribute Group

Figure 4.3.301 XSD Description for the "minTime.TimeLimits.Attr" Attribute Group

Figure 4.3.302 XSD Description for the "n.Index.Attr" Attribute Group

Figure 4.3.303 XSD Description for the "name.MathConstant.Attr" Attribute Group

Figure 4.3.304 XSD Description for the "name.MathOperator.Attr" Attribute Group

Figure 4.3.305 XSD Description for the "name.Param.Attr" Attribute Group

Figure 4.3.306 XSD Description for the "name.StatsOperator.Attr" Attribute Group

Figure 4.3.307 XSD Description for the "navigationMode.TestPart.Attr" Attribute Group

Figure 4.3.308 XSD Description for the "normalMaximum.OutcomeDeclaration.Attr" Attribute Group

Figure 4.3.309 XSD Description for the "normalMinimum.OutcomeDeclaration.Attr" Attribute Group

Figure 4.3.310 XSD Description for the "numberRepeats.Repeat.Attr" Attribute Group

Figure 4.3.311 XSD Description for the "objectLabel.GapImg.Attr" Attribute Group

Figure 4.3.312 XSD Description for the "orientation.ChoiceInteraction.Attr" Attribute Group

Figure 4.3.313 XSD Description for the "orientation.OrderInteraction.Attr" Attribute Group

Figure 4.3.314 XSD Description for the "orientation.SliderInteraction.Attr" Attribute Group

Figure 4.3.315 XSD Description for the "outcomeIdentifier.FeedbackBlock.Attr" Attribute Group

Figure 4.3.316 XSD Description for the "outcomeIdentifier.FeedbackInline.Attr" Attribute Group

Figure 4.3.317 XSD Description for the "outcomeIdentifier.ModalFeedback.Attr" Attribute Group

Figure 4.3.318 XSD Description for the "outcomeIdentifier.OutcomeMinMax.Attr" Attribute Group

Figure 4.3.319 XSD Description for the "outcomeIdentifier.TemplateBlockFeedbackBlock.Attr" Attribute Group

Figure 4.3.320 XSD Description for the "outcomeIdentifier.TestFeedback.Attr" Attribute Group

Figure 4.3.321 XSD Description for the "paramVariable.TemplateDeclaration.Attr" Attribute Group

Figure 4.3.322 XSD Description for the "pattern.PatternMatch.Attr" Attribute Group

Figure 4.3.323 XSD Description for the "patternMask.ExtendedTextInteraction.Attr" Attribute Group

Figure 4.3.324 XSD Description for the "patternMask.TextEntryInteraction.Attr" Attribute Group

Figure 4.3.325 XSD Description for the "placeholderText.ExtendedTextInteraction.Attr" Attribute Group

Figure 4.3.326 XSD Description for the "placeholderText.TextEntryInteraction.Attr" Attribute Group

Figure 4.3.327 XSD Description for the "powerForm.PrintedVariable.Attr" Attribute Group

Figure 4.3.328 XSD Description for the "required.AssessmentItemRef.Attr" Attribute Group

Figure 4.3.329 XSD Description for the "required.AssessmentSection.Attr" Attribute Group

Figure 4.3.330 XSD Description for the "required.Gap.Attr" Attribute Group

Figure 4.3.331 XSD Description for the "required.InlineChoiceInteraction.Attr" Attribute Group

Figure 4.3.332 XSD Description for the "responseIdentifier.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.333 XSD Description for the "responseIdentifier.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.334 XSD Description for the "responseIdentifier.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.335 XSD Description for the "responseIdentifier.EndAttemptInteraction.Attr" Attribute Group

Figure 4.3.336 XSD Description for the "responseIdentifier.TextEntryInteraction.Attr" Attribute Group

Figure 4.3.337 XSD Description for the "reverse.SliderInteraction.Attr" Attribute Group

Figure 4.3.338 XSD Description for the "role.BasePromptInteraction.Attr" Attribute Group

Figure 4.3.339 XSD Description for the "role.BaseSequence.Attr" Attribute Group

Figure 4.3.340 XSD Description for the "role.BaseSequenceFull.Attr" Attribute Group

Figure 4.3.341 XSD Description for the "role.BaseSequenceRIdent.Attr" Attribute Group

Figure 4.3.342 XSD Description for the "role.BaseSequenceXBase.Attr" Attribute Group

Figure 4.3.343 XSD Description for the "role.BaseSequenceXBaseEmpty.Attr" Attribute Group

Figure 4.3.344 XSD Description for the "roundingMode.EqualRounded.Attr" Attribute Group

Figure 4.3.345 XSD Description for the "roundingMode.RoundTo.Attr" Attribute Group

Figure 4.3.346 XSD Description for the "rowspan.TDH.Attr" Attribute Group

Figure 4.3.347 XSD Description for the "scope.TDH.Attr" Attribute Group

Figure 4.3.348 XSD Description for the "sectionIdentifier.Number.Attr" Attribute Group

Figure 4.3.349 XSD Description for the "sectionIdentifier.OutcomeMinMax.Attr" Attribute Group

Figure 4.3.350 XSD Description for the "sectionIdentifier.TestVariables.Attr" Attribute Group

Figure 4.3.351 XSD Description for the "select.Selection.Attr" Attribute Group

Figure 4.3.352 XSD Description for the "shape.AreaMapEntry.Attr" Attribute Group

Figure 4.3.353 XSD Description for the "shape.AssociableHotspot.Attr" Attribute Group

Figure 4.3.354 XSD Description for the "shape.HotspotChoice.Attr" Attribute Group

Figure 4.3.355 XSD Description for the "shape.Inside.Attr" Attribute Group

Figure 4.3.356 XSD Description for the "showFeedback.ItemSessionControl.Attr" Attribute Group

Figure 4.3.357 XSD Description for the "showHide.AssociableHotspot.Attr" Attribute Group

Figure 4.3.358 XSD Description for the "showHide.FeedbackBlock.Attr" Attribute Group

Figure 4.3.359 XSD Description for the "showHide.FeedbackInline.Attr" Attribute Group

Figure 4.3.360 XSD Description for the "showHide.Gap.Attr" Attribute Group

Figure 4.3.361 XSD Description for the "showHide.GapImg.Attr" Attribute Group

Figure 4.3.362 XSD Description for the "showHide.GapText.Attr" Attribute Group

Figure 4.3.363 XSD Description for the "showHide.HotText.Attr" Attribute Group

Figure 4.3.364 XSD Description for the "showHide.HotspotChoice.Attr" Attribute Group

Figure 4.3.365 XSD Description for the "showHide.InlineChoice.Attr" Attribute Group

Figure 4.3.366 XSD Description for the "showHide.ModalFeedback.Attr" Attribute Group

Figure 4.3.367 XSD Description for the "showHide.RubricBlockTemplateBlock.Attr" Attribute Group

Figure 4.3.368 XSD Description for the "showHide.RubricBlockTemplateInline.Attr" Attribute Group

Figure 4.3.369 XSD Description for the "showHide.SimpleAssociableChoice.Attr" Attribute Group

Figure 4.3.370 XSD Description for the "showHide.SimpleChoice.Attr" Attribute Group

Figure 4.3.371 XSD Description for the "showHide.TemplateBlock.Attr" Attribute Group

Figure 4.3.372 XSD Description for the "showHide.TemplateBlockFeedbackBlock.Attr" Attribute Group

Figure 4.3.373 XSD Description for the "showHide.TemplateInline.Attr" Attribute Group

Figure 4.3.374 XSD Description for the "showHide.TestFeedback.Attr" Attribute Group

Figure 4.3.375 XSD Description for the "showSolution.ItemSessionControl.Attr" Attribute Group

Figure 4.3.376 XSD Description for the "shuffle.AssociateInteraction.Attr" Attribute Group

Figure 4.3.377 XSD Description for the "shuffle.ChoiceInteraction.Attr" Attribute Group

Figure 4.3.378 XSD Description for the "shuffle.GapMatchInteraction.Attr" Attribute Group

Figure 4.3.379 XSD Description for the "shuffle.InlineChoiceInteraction.Attr" Attribute Group

Figure 4.3.380 XSD Description for the "shuffle.MatchInteraction.Attr" Attribute Group

Figure 4.3.381 XSD Description for the "shuffle.OrderInteraction.Attr" Attribute Group

Figure 4.3.382 XSD Description for the "shuffle.Ordering.Attr" Attribute Group

Figure 4.3.383 XSD Description for the "sourceIdentifier.VariableMapping.Attr" Attribute Group

Figure 4.3.384 XSD Description for the "sourceValue.InterpolationTableEntry.Attr" Attribute Group

Figure 4.3.385 XSD Description for the "sourceValue.MatchTableEntry.Attr" Attribute Group

Figure 4.3.386 XSD Description for the "span.Col.Attr" Attribute Group

Figure 4.3.387 XSD Description for the "span.ColGroup.Attr" Attribute Group

Figure 4.3.388 XSD Description for the "src.Img.Attr" Attribute Group

Figure 4.3.389 XSD Description for the "step.RandomInteger.Attr" Attribute Group

Figure 4.3.390 XSD Description for the "step.SliderInteraction.Attr" Attribute Group

Figure 4.3.391 XSD Description for the "stepLabel.SliderInteraction.Attr" Attribute Group

Figure 4.3.392 XSD Description for the "stringIdentifier.ExtendedTextInteraction.Attr" Attribute Group

Figure 4.3.393 XSD Description for the "stringIdentifier.TextEntryInteraction.Attr" Attribute Group

Figure 4.3.394 XSD Description for the "submissionMode.TestPart.Attr" Attribute Group

Figure 4.3.395 XSD Description for the "substring.StringMatch.Attr" Attribute Group

Figure 4.3.396 XSD Description for the "summary.Table.Attr" Attribute Group

Figure 4.3.397 XSD Description for the "target.BranchRule.Attr" Attribute Group

Figure 4.3.398 XSD Description for the "targetIdentifier.VariableMapping.Attr" Attribute Group

Figure 4.3.399 XSD Description for the "targetValue.InterpolationTableEntry.Attr" Attribute Group

Figure 4.3.400 XSD Description for the "targetValue.MatchTableEntry.Attr" Attribute Group

Figure 4.3.401 XSD Description for the "template.ResponseProcessing.Attr" Attribute Group

Figure 4.3.402 XSD Description for the "templateIdentifier.AssociableHotspot.Attr" Attribute Group

Figure 4.3.403 XSD Description for the "templateIdentifier.Gap.Attr" Attribute Group

Figure 4.3.404 XSD Description for the "templateIdentifier.GapImg.Attr" Attribute Group

Figure 4.3.405 XSD Description for the "templateIdentifier.GapText.Attr" Attribute Group

Figure 4.3.406 XSD Description for the "templateIdentifier.HotText.Attr" Attribute Group

Figure 4.3.407 XSD Description for the "templateIdentifier.HotspotChoice.Attr" Attribute Group

Figure 4.3.408 XSD Description for the "templateIdentifier.InlineChoice.Attr" Attribute Group

Figure 4.3.409 XSD Description for the "templateIdentifier.RubricBlockTemplateBlock.Attr" Attribute Group

Figure 4.3.410 XSD Description for the "templateIdentifier.RubricBlockTemplateInline.Attr" Attribute Group

Figure 4.3.411 XSD Description for the "templateIdentifier.SimpleAssociableChoice.Attr" Attribute Group

Figure 4.3.412 XSD Description for the "templateIdentifier.SimpleChoice.Attr" Attribute Group

Figure 4.3.413 XSD Description for the "templateIdentifier.TemplateBlock.Attr" Attribute Group

Figure 4.3.414 XSD Description for the "templateIdentifier.TemplateDefault.Attr" Attribute Group

Figure 4.3.415 XSD Description for the "templateIdentifier.TemplateInline.Attr" Attribute Group

Figure 4.3.416 XSD Description for the "templateLocation.ResponseProcessing.Attr" Attribute Group

Figure 4.3.417 XSD Description for the "timeDependent.AssessmentItem.Attr" Attribute Group

Figure 4.3.418 XSD Description for the "title.AssessmentItem.Attr" Attribute Group

Figure 4.3.419 XSD Description for the "title.AssessmentSection.Attr" Attribute Group

Figure 4.3.420 XSD Description for the "title.AssessmentStimulus.Attr" Attribute Group

Figure 4.3.421 XSD Description for the "title.AssessmentTest.Attr" Attribute Group

Figure 4.3.422 XSD Description for the "title.BDO.Attr" Attribute Group

Figure 4.3.423 XSD Description for the "title.EndAttemptInteraction.Attr" Attribute Group

Figure 4.3.424 XSD Description for the "title.InfoControl.Attr" Attribute Group

Figure 4.3.425 XSD Description for the "title.ModalFeedback.Attr" Attribute Group

Figure 4.3.426 XSD Description for the "title.StyleSheet.Attr" Attribute Group

Figure 4.3.427 XSD Description for the "title.TestFeedback.Attr" Attribute Group

Figure 4.3.428 XSD Description for the "tolerance.Equal.Attr" Attribute Group

Figure 4.3.429 XSD Description for the "toleranceMode.Equal.Attr" Attribute Group

Figure 4.3.430 XSD Description for the "toolName.AssessmentItem.Attr" Attribute Group

Figure 4.3.431 XSD Description for the "toolName.AssessmentStimulus.Attr" Attribute Group

Figure 4.3.432 XSD Description for the "toolName.AssessmentTest.Attr" Attribute Group

Figure 4.3.433 XSD Description for the "toolVersion.AssessmentItem.Attr" Attribute Group

Figure 4.3.434 XSD Description for the "toolVersion.AssessmentStimulus.Attr" Attribute Group

Figure 4.3.435 XSD Description for the "toolVersion.AssessmentTest.Attr" Attribute Group

Figure 4.3.436 XSD Description for the "top.GapImg.Attr" Attribute Group

Figure 4.3.437 XSD Description for the "type.A.Attr" Attribute Group

Figure 4.3.438 XSD Description for the "type.Object.Attr" Attribute Group

Figure 4.3.439 XSD Description for the "type.Param.Attr" Attribute Group

Figure 4.3.440 XSD Description for the "type.StyleSheet.Attr" Attribute Group

Figure 4.3.441 XSD Description for the "type.UploadInteraction.Attr" Attribute Group

Figure 4.3.442 XSD Description for the "upperBound.AreaMapping.Attr" Attribute Group

Figure 4.3.443 XSD Description for the "upperBound.Mapping.Attr" Attribute Group

Figure 4.3.444 XSD Description for the "upperBound.SliderInteraction.Attr" Attribute Group

Figure 4.3.445 XSD Description for the "use.RubricBlock.Attr" Attribute Group

Figure 4.3.446 XSD Description for the "validateResponses.ItemSessionControl.Attr" Attribute Group

Figure 4.3.447 XSD Description for the "valign.TDH.Attr" Attribute Group

Figure 4.3.448 XSD Description for the "value.Param.Attr" Attribute Group

Figure 4.3.449 XSD Description for the "value.Weight.Attr" Attribute Group

Figure 4.3.450 XSD Description for the "valuetype.Param.Attr" Attribute Group

Figure 4.3.451 XSD Description for the "variableIdentifier.TestVariables.Attr" Attribute Group

Figure 4.3.452 XSD Description for the "variableIdentifierRef.OutcomeDeclaration.Attr" Attribute Group

Figure 4.3.453 XSD Description for the "view.OutcomeDeclaration.Attr" Attribute Group

Figure 4.3.454 XSD Description for the "view.RubricBlock.Attr" Attribute Group

Figure 4.3.455 XSD Description for the "visible.AssessmentSection.Attr" Attribute Group

Figure 4.3.456 XSD Description for the "weightIdentifier.OutcomeMinMax.Attr" Attribute Group

Figure 4.3.457 XSD Description for the "weightIdentifier.TestVariables.Attr" Attribute Group

Figure 4.3.458 XSD Description for the "weightIdentifier.Variable.Attr" Attribute Group

Figure 4.3.459 XSD Description for the "width.Img.Attr" Attribute Group

Figure 4.3.460 XSD Description for the "width.Object.Attr" Attribute Group

Figure 4.3.461 XSD Description for the "withReplacement.Selection.Attr" Attribute Group

Figure 4.4.1 XSD Description for the "AssessmentItem.Type" Root ComplexType

Figure 4.4.2 XSD Description for the "AssessmentSection.Type" Root ComplexType

Figure 4.4.3 XSD Description for the "AssessmentStimulus.Type" Root ComplexType

Figure 4.4.4 XSD Description for the "AssessmentTest.Type" Root ComplexType

Figure 4.4.5 XSD Description for the "OutcomeDeclaration.Type" Root ComplexType

Figure 4.4.6 XSD Description for the "ResponseProcessing.Type" Root ComplexType

Figure 4.5.1 XSD Description for the "A.Type" Core Complex Type

Figure 4.5.2 XSD Description for the "AnyN.Type" Core Complex Type

Figure 4.5.3 XSD Description for the "AreaMapping.Type" Core Complex Type

Figure 4.5.4 XSD Description for the "AssessmentItemRef.Type" Core Complex Type

Figure 4.5.5 XSD Description for the "AssociableHotspot.Type" Core Complex Type

Figure 4.5.6 XSD Description for the "AssociateInteraction.Type" Core Complex Type

Figure 4.5.7 XSD Description for the "BDO.Type" Core Complex Type

Figure 4.5.8 XSD Description for the "BR.Type" Core Complex Type

Figure 4.5.9 XSD Description for the "BasePromptInteraction.Type" Core Complex Type

Figure 4.5.10 XSD Description for the "BaseSequence.Type" Core Complex Type

Figure 4.5.11 XSD Description for the "BaseSequenceFull.Type" Core Complex Type

Figure 4.5.12 XSD Description for the "BaseSequenceRIdent.Type" Core Complex Type

Figure 4.5.13 XSD Description for the "BaseSequenceXBase.Type" Core Complex Type

Figure 4.5.14 XSD Description for the "BlockQuote.Type" Core Complex Type

Figure 4.5.15 XSD Description for the "BranchRule.Type" Core Complex Type

Figure 4.5.16 XSD Description for the "Caption.Type" Core Complex Type

Figure 4.5.17 XSD Description for the "ChoiceInteraction.Type" Core Complex Type

Figure 4.5.18 XSD Description for the "Col.Type" Core Complex Type

Figure 4.5.19 XSD Description for the "ColGroup.Type" Core Complex Type

Figure 4.5.20 XSD Description for the "CorrectResponse.Type" Core Complex Type

Figure 4.5.21 XSD Description for the "CustomInteraction.Type" Core Complex Type

Figure 4.5.22 XSD Description for the "CustomOperator.Type" Core Complex Type

Figure 4.5.23 XSD Description for the "DD.Type" Core Complex Type

Figure 4.5.24 XSD Description for the "DL.Type" Core Complex Type

Figure 4.5.25 XSD Description for the "DT.Type" Core Complex Type

Figure 4.5.26 XSD Description for the "DefaultValue.Type" Core Complex Type

Figure 4.5.27 XSD Description for the "Div.Type" Core Complex Type

Figure "ssmlGroup" Local Element Description

Figure 4.5.28 XSD Description for the "DrawingInteraction.Type" Core Complex Type

Figure 4.5.29 XSD Description for the "EndAttemptInteraction.Type" Core Complex Type

Figure 4.5.30 XSD Description for the "Equal.Type" Core Complex Type

Figure 4.5.31 XSD Description for the "EqualRounded.Type" Core Complex Type

Figure 4.5.32 XSD Description for the "ExtendedTextInteraction.Type" Core Complex Type

Figure 4.5.33 XSD Description for the "FeedbackBlock.Type" Core Complex Type

Figure 4.5.34 XSD Description for the "FeedbackInline.Type" Core Complex Type

Figure 4.5.35 XSD Description for the "FieldValue.Type" Core Complex Type

Figure 4.5.36 XSD Description for the "Gap.Type" Core Complex Type

Figure 4.5.37 XSD Description for the "GapImg.Type" Core Complex Type

Figure 4.5.38 XSD Description for the "GapMatchInteraction.Type" Core Complex Type

Figure 4.5.39 XSD Description for the "GapText.Type" Core Complex Type

Figure 4.5.40 XSD Description for the "GraphicAssociateInteraction.Type" Core Complex Type

Figure 4.5.41 XSD Description for the "GraphicGapMatchInteraction.Type" Core Complex Type

Figure 4.5.42 XSD Description for the "GraphicOrderInteraction.Type" Core Complex Type

Figure 4.5.43 XSD Description for the "HR.Type" Core Complex Type

Figure 4.5.44 XSD Description for the "HTMLText.Type" Core Complex Type

Figure 4.5.45 XSD Description for the "HotText.Type" Core Complex Type

Figure 4.5.46 XSD Description for the "HotTextInteraction.Type" Core Complex Type

Figure 4.5.47 XSD Description for the "HotspotChoice.Type" Core Complex Type

Figure 4.5.48 XSD Description for the "HotspotInteraction.Type" Core Complex Type

Figure 4.5.49 XSD Description for the "Img.Type" Core Complex Type

Figure 4.5.50 XSD Description for the "Index.Type" Core Complex Type

Figure 4.5.51 XSD Description for the "InfoControl.Type" Core Complex Type

Figure 4.5.52 XSD Description for the "InlineChoice.Type" Core Complex Type

Figure 4.5.53 XSD Description for the "InlineChoiceInteraction.Type" Core Complex Type

Figure 4.5.54 XSD Description for the "Inside.Type" Core Complex Type

Figure 4.5.55 XSD Description for the "InterpolationTable.Type" Core Complex Type

Figure 4.5.56 XSD Description for the "ItemBody.Type" Core Complex Type

Figure 4.5.57 XSD Description for the "LI.Type" Core Complex Type

Figure 4.5.58 XSD Description for the "Label.Type" Core Complex Type

Figure 4.5.59 XSD Description for the "Logic0toMany.Type" Core Complex Type

Figure 4.5.60 XSD Description for the "Logic1toMany.Type" Core Complex Type

Figure 4.5.61 XSD Description for the "LogicPair.Type" Core Complex Type

Figure 4.5.62 XSD Description for the "LogicSingle.Type" Core Complex Type

Figure 4.5.63 XSD Description for the "LookupOutcomeValue.Type" Core Complex Type

Figure 4.5.64 XSD Description for the "Mapping.Type" Core Complex Type

Figure 4.5.65 XSD Description for the "MatchInteraction.Type" Core Complex Type

Figure 4.5.66 XSD Description for the "MatchTable.Type" Core Complex Type

Figure 4.5.67 XSD Description for the "MathOperator.Type" Core Complex Type

Figure 4.5.68 XSD Description for the "MediaInteraction.Type" Core Complex Type

Figure 4.5.69 XSD Description for the "ModalFeedback.Type" Core Complex Type

Figure 4.5.70 XSD Description for the "NumericLogic1toMany.Type" Core Complex Type

Figure 4.5.71 XSD Description for the "OUL.Type" Core Complex Type

Figure 4.5.72 XSD Description for the "Object.Type" Core Complex Type

Figure 4.5.73 XSD Description for the "OrderInteraction.Type" Core Complex Type

Figure 4.5.74 XSD Description for the "Ordering.Type" Core Complex Type

Figure 4.5.75 XSD Description for the "OutcomeCondition.Type" Core Complex Type

Figure 4.5.76 XSD Description for the "OutcomeElse.Type" Core Complex Type

Figure 4.5.77 XSD Description for the "OutcomeIf.Type" Core Complex Type

Figure 4.5.78 XSD Description for the "OutcomeProcessing.Type" Core Complex Type

Figure 4.5.79 XSD Description for the "OutcomeProcessingFragment.Type" Core Complex Type

Figure 4.5.80 XSD Description for the "PatternMatch.Type" Core Complex Type

Figure 4.5.81 XSD Description for the "PositionObjectInteraction.Type" Core Complex Type

Figure 4.5.82 XSD Description for the "PositionObjectStage.Type" Core Complex Type

Figure 4.5.83 XSD Description for the "Prompt.Type" Core Complex Type

Figure 4.5.84 XSD Description for the "Q.Type" Core Complex Type

Figure 4.5.85 XSD Description for the "Repeat.Type" Core Complex Type

Figure 4.5.86 XSD Description for the "ResponseCondition.Type" Core Complex Type

Figure 4.5.87 XSD Description for the "ResponseDeclaration.Type" Core Complex Type

Figure 4.5.88 XSD Description for the "ResponseElse.Type" Core Complex Type

Figure 4.5.89 XSD Description for the "ResponseIf.Type" Core Complex Type

Figure 4.5.90 XSD Description for the "ResponseProcessingFragment.Type" Core Complex Type

Figure 4.5.91 XSD Description for the "RoundTo.Type" Core Complex Type

Figure 4.5.92 XSD Description for the "RubricBlock.Type" Core Complex Type

Figure "templateBlock" Local Element Description

Figure "templateInline" Local Element Description

Figure 4.5.93 XSD Description for the "RubricBlockTemplateBlock.Type" Core Complex Type

Figure "templateBlock" Local Element Description

Figure 4.5.94 XSD Description for the "RubricBlockTemplateInline.Type" Core Complex Type

Figure 4.5.95 XSD Description for the "SelectPointInteraction.Type" Core Complex Type

Figure 4.5.96 XSD Description for the "Selection.Type" Core Complex Type

Figure 4.5.97 XSD Description for the "SetValue.Type" Core Complex Type

Figure 4.5.98 XSD Description for the "SimpleAssociableChoice.Type" Core Complex Type

Figure 4.5.99 XSD Description for the "SimpleChoice.Type" Core Complex Type

Figure 4.5.100 XSD Description for the "SimpleMatchSet.Type" Core Complex Type

Figure 4.5.101 XSD Description for the "SliderInteraction.Type" Core Complex Type

Figure 4.5.102 XSD Description for the "StatsOperator.Type" Core Complex Type

Figure 4.5.103 XSD Description for the "StimulusBody.Type" Core Complex Type

Figure 4.5.104 XSD Description for the "StringMatch.Type" Core Complex Type

Figure 4.5.105 XSD Description for the "Substring.Type" Core Complex Type

Figure 4.5.106 XSD Description for the "TDH.Type" Core Complex Type

Figure 4.5.107 XSD Description for the "TR.Type" Core Complex Type

Figure 4.5.108 XSD Description for the "Table.Type" Core Complex Type

Figure 4.5.109 XSD Description for the "TablePart.Type" Core Complex Type

Figure 4.5.110 XSD Description for the "TemplateBlock.Type" Core Complex Type

Figure "feedbackBlock" Local Element Description

Figure 4.5.111 XSD Description for the "TemplateBlockFeedbackBlock.Type" Core Complex Type

Figure "feedbackBlock" Local Element Description

Figure 4.5.112 XSD Description for the "TemplateCondition.Type" Core Complex Type

Figure 4.5.113 XSD Description for the "TemplateConstraint.Type" Core Complex Type

Figure 4.5.114 XSD Description for the "TemplateDeclaration.Type" Core Complex Type

Figure 4.5.115 XSD Description for the "TemplateDefault.Type" Core Complex Type

Figure 4.5.116 XSD Description for the "TemplateElse.Type" Core Complex Type

Figure 4.5.117 XSD Description for the "TemplateIf.Type" Core Complex Type

Figure 4.5.118 XSD Description for the "TemplateInline.Type" Core Complex Type

Figure 4.5.119 XSD Description for the "TemplateProcessing.Type" Core Complex Type

Figure 4.5.120 XSD Description for the "TestFeedback.Type" Core Complex Type

Figure 4.5.121 XSD Description for the "TestPart.Type" Core Complex Type

Figure 4.5.122 XSD Description for the "TextEntryInteraction.Type" Core Complex Type

Figure 4.5.123 XSD Description for the "UploadInteraction.Type" Core Complex Type

Figure 4.6.1 XSD Description for the "AreaMapEntry.Type" Derived Complex Type

Figure 4.6.2 XSD Description for the "AssessmentSectionRef.Type" Derived Complex Type

Figure 4.6.3 XSD Description for the "AssessmentStimulusRef.Type" Derived Complex Type

Figure 4.6.4 XSD Description for the "BaseSequenceXBaseEmpty.Type" Derived Complex Type

Figure 4.6.5 XSD Description for the "BaseValue.Type" Derived Complex Type

Figure 4.6.6 XSD Description for the "Correct.Type" Derived Complex Type

Figure 4.6.7 XSD Description for the "Default.Type" Derived Complex Type

Figure 4.6.8 XSD Description for the "InterpolationTableEntry.Type" Derived Complex Type

Figure 4.6.9 XSD Description for the "ItemSessionControl.Type" Derived Complex Type

Figure 4.6.10 XSD Description for the "MapEntry.Type" Derived Complex Type

Figure 4.6.11 XSD Description for the "MapResponse.Type" Derived Complex Type

Figure 4.6.12 XSD Description for the "MatchTableEntry.Type" Derived Complex Type

Figure 4.6.13 XSD Description for the "MathConstant.Type" Derived Complex Type

Figure 4.6.14 XSD Description for the "Number.Type" Derived Complex Type

Figure 4.6.15 XSD Description for the "OutcomeMinMax.Type" Derived Complex Type

Figure 4.6.16 XSD Description for the "Param.Type" Derived Complex Type

Figure 4.6.17 XSD Description for the "PrintedVariable.Type" Derived Complex Type

Figure 4.6.18 XSD Description for the "RandomFloat.Type" Derived Complex Type

Figure 4.6.19 XSD Description for the "RandomInteger.Type" Derived Complex Type

Figure 4.6.20 XSD Description for the "StyleSheet.Type" Derived Complex Type

Figure 4.6.21 XSD Description for the "TestVariables.Type" Derived Complex Type

Figure 4.6.22 XSD Description for the "TimeLimits.Type" Derived Complex Type

Figure 4.6.23 XSD Description for the "Value.Type" Derived Complex Type

Figure 4.6.24 XSD Description for the "Variable.Type" Derived Complex Type

Figure 4.6.25 XSD Description for the "VariableMapping.Type" Derived Complex Type

Figure 4.6.26 XSD Description for the "Weight.Type" Derived Complex Type

Figure 4.7.1 XSD Description for the "ARIALevelInteger.Type" Simple Type

Figure 4.7.2 XSD Description for the "Coords.Type" Simple Type

Figure 4.7.3 XSD Description for the "EncVariableString.Type" Simple Type

Figure 4.7.4 XSD Description for the "Identifier.Type" Simple Type

Figure 4.7.5 XSD Description for the "IdentifierList.Type" Simple Type

Figure 4.7.6 XSD Description for the "IntegerList.Type" Simple Type

Figure 4.7.7 XSD Description for the "Length.Type" Simple Type

Figure 4.7.8 XSD Description for the "MimeType.Type" Simple Type

Figure 4.7.9 XSD Description for the "NonNegativeDouble.Type" Simple Type

Figure 4.7.10 XSD Description for the "StringList.Type" Simple Type

Figure 4.7.11 XSD Description for the "ToleranceList.Type" Simple Type

Figure 4.7.12 XSD Description for the "UniqueIdentifier.Type" Simple Type

Figure 4.7.13 XSD Description for the "UniqueIdentifierRef.Type" Simple Type

Figure 4.7.14 XSD Description for the "VariableString.Type" Simple Type

Figure 4.7.15 XSD Description for the "View.Type" Simple Type

toc | top

# List of Tables

Table 2.1 - UML/XSD Mapping for the Root Attributes

Table 2.2.1 - UML/XSD Mapping for the AssessmentItem Root Class

Table 2.2.2 - UML/XSD Mapping for the AssessmentSection Root Class

Table 2.2.3 - UML/XSD Mapping for the AssessmentStimulus Root Class

Table 2.2.4 - UML/XSD Mapping for the AssessmentTest Root Class

Table 2.2.5 - UML/XSD Mapping for the OutcomeDeclaration Root Class

Table 2.2.6 - UML/XSD Mapping for the ResponseProcessing Root Class

Table 2.3.1 - UML/XSD Mapping for the A Core Class

Table 2.3.2 - UML/XSD Mapping for the AnyN Core Class

Table 2.3.3 - UML/XSD Mapping for the AreaMapping Core Class

Table 2.3.4 - UML/XSD Mapping for the AssessmentItemRef Core Class

Table 2.3.5 - UML/XSD Mapping for the AssociableHotspot Core Class

Table 2.3.6 - UML/XSD Mapping for the AssociateInteraction Core Class

Table 2.3.7 - UML/XSD Mapping for the BDO Core Class

Table 2.3.8 - UML/XSD Mapping for the BR Core Class

Table 2.3.9 - UML/XSD Mapping for the BasePromptInteraction Core Class

Table 2.3.10 - UML/XSD Mapping for the BaseSequence Core Class

Table 2.3.11 - UML/XSD Mapping for the BaseSequenceFull Core Class

Table 2.3.12 - UML/XSD Mapping for the BaseSequenceRIdent Core Class

Table 2.3.13 - UML/XSD Mapping for the BaseSequenceXBase Core Class

Table 2.3.14 - UML/XSD Mapping for the BlockQuote Core Class

Table 2.3.15 - UML/XSD Mapping for the BranchRule Core Class

Table 2.3.16 - UML/XSD Mapping for the Caption Core Class

Table 2.3.17 - UML/XSD Mapping for the ChoiceInteraction Core Class

Table 2.3.18 - UML/XSD Mapping for the Col Core Class

Table 2.3.19 - UML/XSD Mapping for the ColGroup Core Class

Table 2.3.20 - UML/XSD Mapping for the CorrectResponse Core Class

Table 2.3.21 - UML/XSD Mapping for the CustomInteraction Core Class

Table 2.3.22 - UML/XSD Mapping for the CustomOperator Core Class

Table 2.3.23 - UML/XSD Mapping for the DD Core Class

Table 2.3.24 - UML/XSD Mapping for the DL Core Class

Table 2.3.25 - UML/XSD Mapping for the DT Core Class

Table 2.3.26 - UML/XSD Mapping for the DefaultValue Core Class

Table 2.3.27 - UML/XSD Mapping for the Div Core Class

Table 2.3.28 - UML/XSD Mapping for the DrawingInteraction Core Class

Table 2.3.29 - UML/XSD Mapping for the EndAttemptInteraction Core Class

Table 2.3.30 - UML/XSD Mapping for the Equal Core Class

Table 2.3.31 - UML/XSD Mapping for the EqualRounded Core Class

Table 2.3.32 - UML/XSD Mapping for the ExtendedTextInteraction Core Class

Table 2.3.33 - UML/XSD Mapping for the FeedbackBlock Core Class

Table 2.3.34 - UML/XSD Mapping for the FeedbackInline Core Class

Table 2.3.35 - UML/XSD Mapping for the FieldValue Core Class

Table 2.3.36 - UML/XSD Mapping for the Gap Core Class

Table 2.3.37 - UML/XSD Mapping for the GapImg Core Class

Table 2.3.38 - UML/XSD Mapping for the GapMatchInteraction Core Class

Table 2.3.39 - UML/XSD Mapping for the GapText Core Class

Table 2.3.40 - UML/XSD Mapping for the GraphicAssociateInteraction Core Class

Table 2.3.41 - UML/XSD Mapping for the GraphicGapMatchInteraction Core Class

Table 2.3.42 - UML/XSD Mapping for the GraphicOrderInteraction Core Class

Table 2.3.43 - UML/XSD Mapping for the HR Core Class

Table 2.3.44 - UML/XSD Mapping for the HTMLText Core Class

Table 2.3.45 - UML/XSD Mapping for the HotText Core Class

Table 2.3.46 - UML/XSD Mapping for the HotTextInteraction Core Class

Table 2.3.47 - UML/XSD Mapping for the HotspotChoice Core Class

Table 2.3.48 - UML/XSD Mapping for the HotspotInteraction Core Class

Table 2.3.49 - UML/XSD Mapping for the Img Core Class

Table 2.3.50 - UML/XSD Mapping for the Index Core Class

Table 2.3.51 - UML/XSD Mapping for the InfoControl Core Class

Table 2.3.52 - UML/XSD Mapping for the InlineChoice Core Class

Table 2.3.53 - UML/XSD Mapping for the InlineChoiceInteraction Core Class

Table 2.3.54 - UML/XSD Mapping for the Inside Core Class

Table 2.3.55 - UML/XSD Mapping for the InterpolationTable Core Class

Table 2.3.56 - UML/XSD Mapping for the ItemBody Core Class

Table 2.3.57 - UML/XSD Mapping for the LI Core Class

Table 2.3.58 - UML/XSD Mapping for the Label Core Class

Table 2.3.59 - UML/XSD Mapping for the Logic0toMany Core Class

Table 2.3.60 - UML/XSD Mapping for the Logic1toMany Core Class

Table 2.3.61 - UML/XSD Mapping for the LogicPair Core Class

Table 2.3.62 - UML/XSD Mapping for the LogicSingle Core Class

Table 2.3.63 - UML/XSD Mapping for the LookupOutcomeValue Core Class

Table 2.3.64 - UML/XSD Mapping for the Mapping Core Class

Table 2.3.65 - UML/XSD Mapping for the MatchInteraction Core Class

Table 2.3.66 - UML/XSD Mapping for the MatchTable Core Class

Table 2.3.67 - UML/XSD Mapping for the MathOperator Core Class

Table 2.3.68 - UML/XSD Mapping for the MediaInteraction Core Class

Table 2.3.69 - UML/XSD Mapping for the ModalFeedback Core Class

Table 2.3.70 - UML/XSD Mapping for the NumericLogic1toMany Core Class

Table 2.3.71 - UML/XSD Mapping for the OUL Core Class

Table 2.3.72 - UML/XSD Mapping for the Object Core Class

Table 2.3.73 - UML/XSD Mapping for the OrderInteraction Core Class

Table 2.3.74 - UML/XSD Mapping for the Ordering Core Class

Table 2.3.75 - UML/XSD Mapping for the OutcomeCondition Core Class

Table 2.3.76 - UML/XSD Mapping for the OutcomeElse Core Class

Table 2.3.77 - UML/XSD Mapping for the OutcomeIf Core Class

Table 2.3.78 - UML/XSD Mapping for the OutcomeProcessing Core Class

Table 2.3.79 - UML/XSD Mapping for the OutcomeProcessingFragment Core Class

Table 2.3.80 - UML/XSD Mapping for the PatternMatch Core Class

Table 2.3.81 - UML/XSD Mapping for the PositionObjectInteraction Core Class

Table 2.3.82 - UML/XSD Mapping for the PositionObjectStage Core Class

Table 2.3.83 - UML/XSD Mapping for the Prompt Core Class

Table 2.3.84 - UML/XSD Mapping for the Q Core Class

Table 2.3.85 - UML/XSD Mapping for the Repeat Core Class

Table 2.3.86 - UML/XSD Mapping for the ResponseCondition Core Class

Table 2.3.87 - UML/XSD Mapping for the ResponseDeclaration Core Class

Table 2.3.88 - UML/XSD Mapping for the ResponseElse Core Class

Table 2.3.89 - UML/XSD Mapping for the ResponseIf Core Class

Table 2.3.90 - UML/XSD Mapping for the ResponseProcessingFragment Core Class

Table 2.3.91 - UML/XSD Mapping for the RoundTo Core Class

Table 2.3.92 - UML/XSD Mapping for the RubricBlock Core Class

Table 2.3.93 - UML/XSD Mapping for the RubricBlockTemplateBlock Core Class

Table 2.3.94 - UML/XSD Mapping for the RubricBlockTemplateInline Core Class

Table 2.3.95 - UML/XSD Mapping for the SelectPointInteraction Core Class

Table 2.3.96 - UML/XSD Mapping for the Selection Core Class

Table 2.3.97 - UML/XSD Mapping for the SetValue Core Class

Table 2.3.98 - UML/XSD Mapping for the SimpleAssociableChoice Core Class

Table 2.3.99 - UML/XSD Mapping for the SimpleChoice Core Class

Table 2.3.100 - UML/XSD Mapping for the SimpleMatchSet Core Class

Table 2.3.101 - UML/XSD Mapping for the SliderInteraction Core Class

Table 2.3.102 - UML/XSD Mapping for the StatsOperator Core Class

Table 2.3.103 - UML/XSD Mapping for the StimulusBody Core Class

Table 2.3.104 - UML/XSD Mapping for the StringMatch Core Class

Table 2.3.105 - UML/XSD Mapping for the Substring Core Class

Table 2.3.106 - UML/XSD Mapping for the TDH Core Class

Table 2.3.107 - UML/XSD Mapping for the TR Core Class

Table 2.3.108 - UML/XSD Mapping for the Table Core Class

Table 2.3.109 - UML/XSD Mapping for the TablePart Core Class

Table 2.3.110 - UML/XSD Mapping for the TemplateBlock Core Class

Table 2.3.111 - UML/XSD Mapping for the TemplateBlockFeedbackBlock Core Class

Table 2.3.112 - UML/XSD Mapping for the TemplateCondition Core Class

Table 2.3.113 - UML/XSD Mapping for the TemplateConstraint Core Class

Table 2.3.114 - UML/XSD Mapping for the TemplateDeclaration Core Class

Table 2.3.115 - UML/XSD Mapping for the TemplateDefault Core Class

Table 2.3.116 - UML/XSD Mapping for the TemplateElse Core Class

Table 2.3.117 - UML/XSD Mapping for the TemplateIf Core Class

Table 2.3.118 - UML/XSD Mapping for the TemplateInline Core Class

Table 2.3.119 - UML/XSD Mapping for the TemplateProcessing Core Class

Table 2.3.120 - UML/XSD Mapping for the TestFeedback Core Class

Table 2.3.121 - UML/XSD Mapping for the TestPart Core Class

Table 2.3.122 - UML/XSD Mapping for the TextEntryInteraction Core Class

Table 2.3.123 - UML/XSD Mapping for the UploadInteraction Core Class

Table 2.4.1 - UML/XSD Mapping for the ARIALevelInteger Derived Class

Table 2.4.2 - UML/XSD Mapping for the AreaMapEntry Derived Class

Table 2.4.3 - UML/XSD Mapping for the AssessmentSectionRef Derived Class

Table 2.4.4 - UML/XSD Mapping for the AssessmentStimulusRef Derived Class

Table 2.4.5 - UML/XSD Mapping for the BaseSequenceXBaseEmpty Derived Class

Table 2.4.6 - UML/XSD Mapping for the BaseValue Derived Class

Table 2.4.7 - UML/XSD Mapping for the Coords Derived Class

Table 2.4.8 - UML/XSD Mapping for the Correct Derived Class

Table 2.4.9 - UML/XSD Mapping for the DataHTML5Extension Derived Class

Table 2.4.10 - UML/XSD Mapping for the Default Derived Class

Table 2.4.11 - UML/XSD Mapping for the EncVariableString Derived Class

Table 2.4.12 - UML/XSD Mapping for the Identifier Derived Class

Table 2.4.13 - UML/XSD Mapping for the InterpolationTableEntry Derived Class

Table 2.4.14 - UML/XSD Mapping for the ItemSessionControl Derived Class

Table 2.4.15 - UML/XSD Mapping for the Length Derived Class

Table 2.4.16 - UML/XSD Mapping for the MapEntry Derived Class

Table 2.4.17 - UML/XSD Mapping for the MapResponse Derived Class

Table 2.4.18 - UML/XSD Mapping for the MatchTableEntry Derived Class

Table 2.4.19 - UML/XSD Mapping for the MathConstant Derived Class

Table 2.4.20 - UML/XSD Mapping for the MimeType Derived Class

Table 2.4.21 - UML/XSD Mapping for the NonNegativeDouble Derived Class

Table 2.4.22 - UML/XSD Mapping for the Number Derived Class

Table 2.4.23 - UML/XSD Mapping for the OutcomeMinMax Derived Class

Table 2.4.24 - UML/XSD Mapping for the Param Derived Class

Table 2.4.25 - UML/XSD Mapping for the PrintedVariable Derived Class

Table 2.4.26 - UML/XSD Mapping for the RandomFloat Derived Class

Table 2.4.27 - UML/XSD Mapping for the RandomInteger Derived Class

Table 2.4.28 - UML/XSD Mapping for the StyleSheet Derived Class

Table 2.4.29 - UML/XSD Mapping for the TestVariables Derived Class

Table 2.4.30 - UML/XSD Mapping for the TimeLimits Derived Class

Table 2.4.31 - UML/XSD Mapping for the UniqueIdentifier Derived Class

Table 2.4.32 - UML/XSD Mapping for the UniqueIdentifierRef Derived Class

Table 2.4.33 - UML/XSD Mapping for the Value Derived Class

Table 2.4.34 - UML/XSD Mapping for the Variable Derived Class

Table 2.4.35 - UML/XSD Mapping for the VariableMapping Derived Class

Table 2.4.36 - UML/XSD Mapping for the VariableString Derived Class

Table 2.4.37 - UML/XSD Mapping for the Weight Derived Class

Table 2.5 - UML/XSD Mapping for the Enumerated Class Definitions

Table 2.6 - UML/XSD Mapping for the Enumerated List Class Definitions

Table 2.7 UML/XSD Mapping for the List Class Definitions

Table 2.8 UML/XSD Mapping for the Union Class Definitions

Table 2.9 UML/XSD Mapping for the Primitive Type Definitions

Table 4.1.1 XSD Description for the "assessmentItem" Root Element

Table 4.1.2 XSD Description for the "assessmentSection" Root Element

Table 4.1.3 XSD Description for the "assessmentStimulus" Root Element

Table 4.1.4 XSD Description for the "assessmentTest" Root Element

Table 4.1.5 XSD Description for the "outcomeDeclaration" Root Element

Table 4.1.6 XSD Description for the "responseProcessing" Root Element

Table 4.2.1 XSD Description for the "a" Global Element

Table 4.2.2 XSD Description for the "abbr" Global Element

Table 4.2.3 XSD Description for the "acronym" Global Element

Table 4.2.4 XSD Description for the "address" Global Element

Table 4.2.5 XSD Description for the "and" Global Element

Table 4.2.6 XSD Description for the "anyN" Global Element

Table 4.2.7 XSD Description for the "apip:apipAccessibility" Global Element

Table 4.2.8 XSD Description for the "areaMapEntry" Global Element

Table 4.2.9 XSD Description for the "areaMapping" Global Element

Table 4.2.10 XSD Description for the "qh5:article" Global Element

Table 4.2.11 XSD Description for the "qh5:aside" Global Element

Table 4.2.12 XSD Description for the "assessmentItemRef" Global Element

Table 4.2.13 XSD Description for the "assessmentSectionRef" Global Element

Table 4.2.14 XSD Description for the "assessmentStimulusRef" Global Element

Table 4.2.15 XSD Description for the "associableHotspot" Global Element

Table 4.2.16 XSD Description for the "associateInteraction" Global Element

Table 4.2.17 XSD Description for the "qh5:audio" Global Element

Table 4.2.18 XSD Description for the "ssml11:audio" Global Element

Table 4.2.19 XSD Description for the "b" Global Element

Table 4.2.20 XSD Description for the "baseValue" Global Element

Table 4.2.21 XSD Description for the "qh5:bdi" Global Element

Table 4.2.22 XSD Description for the "bdo" Global Element

Table 4.2.23 XSD Description for the "big" Global Element

Table 4.2.24 XSD Description for the "blockquote" Global Element

Table 4.2.25 XSD Description for the "br" Global Element

Table 4.2.26 XSD Description for the "branchRule" Global Element

Table 4.2.27 XSD Description for the "ssml11:break" Global Element

Table 4.2.28 XSD Description for the "caption" Global Element

Table 4.2.29 XSD Description for the "choiceInteraction" Global Element

Table 4.2.30 XSD Description for the "cite" Global Element

Table 4.2.31 XSD Description for the "code" Global Element

Table 4.2.32 XSD Description for the "col" Global Element

Table 4.2.33 XSD Description for the "colgroup" Global Element

Table 4.2.34 XSD Description for the "containerSize" Global Element

Table 4.2.35 XSD Description for the "contains" Global Element

Table 4.2.36 XSD Description for the "correct" Global Element

Table 4.2.37 XSD Description for the "correctResponse" Global Element

Table 4.2.38 XSD Description for the "customInteraction" Global Element

Table 4.2.39 XSD Description for the "customOperator" Global Element

Table 4.2.40 XSD Description for the "dd" Global Element

Table 4.2.41 XSD Description for the "default" Global Element

Table 4.2.42 XSD Description for the "defaultValue" Global Element

Table 4.2.43 XSD Description for the "delete" Global Element

Table 4.2.44 XSD Description for the "dfn" Global Element

Table 4.2.45 XSD Description for the "div" Global Element

Table 4.2.46 XSD Description for the "divide" Global Element

Table 4.2.47 XSD Description for the "dl" Global Element

Table 4.2.48 XSD Description for the "drawingInteraction" Global Element

Table 4.2.49 XSD Description for the "dt" Global Element

Table 4.2.50 XSD Description for the "durationGTE" Global Element

Table 4.2.51 XSD Description for the "durationLT" Global Element

Table 4.2.52 XSD Description for the "em" Global Element

Table 4.2.53 XSD Description for the "ssml11:emphasis" Global Element

Table 4.2.54 XSD Description for the "endAttemptInteraction" Global Element

Table 4.2.55 XSD Description for the "equal" Global Element

Table 4.2.56 XSD Description for the "equalRounded" Global Element

Table 4.2.57 XSD Description for the "exitResponse" Global Element

Table 4.2.58 XSD Description for the "exitTemplate" Global Element

Table 4.2.59 XSD Description for the "exitTest" Global Element

Table 4.2.60 XSD Description for the "extendedTextInteraction" Global Element

Table 4.2.61 XSD Description for the "feedbackBlock" Global Element

Table 4.2.62 XSD Description for the "feedbackInline" Global Element

Table 4.2.63 XSD Description for the "fieldValue" Global Element

Table 4.2.64 XSD Description for the "qh5:figure" Global Element

Table 4.2.65 XSD Description for the "qh5:footer" Global Element

Table 4.2.66 XSD Description for the "gap" Global Element

Table 4.2.67 XSD Description for the "gapImg" Global Element

Table 4.2.68 XSD Description for the "gapMatchInteraction" Global Element

Table 4.2.69 XSD Description for the "gapText" Global Element

Table 4.2.70 XSD Description for the "gcd" Global Element

Table 4.2.71 XSD Description for the "graphicAssociateInteraction" Global Element

Table 4.2.72 XSD Description for the "graphicGapMatchInteraction" Global Element

Table 4.2.73 XSD Description for the "graphicOrderInteraction" Global Element

Table 4.2.74 XSD Description for the "gt" Global Element

Table 4.2.75 XSD Description for the "gte" Global Element

Table 4.2.76 XSD Description for the "h1" Global Element

Table 4.2.77 XSD Description for the "h2" Global Element

Table 4.2.78 XSD Description for the "h3" Global Element

Table 4.2.79 XSD Description for the "h4" Global Element

Table 4.2.80 XSD Description for the "h5" Global Element

Table 4.2.81 XSD Description for the "h6" Global Element

Table 4.2.82 XSD Description for the "qh5:header" Global Element

Table 4.2.83 XSD Description for the "hotspotChoice" Global Element

Table 4.2.84 XSD Description for the "hotspotInteraction" Global Element

Table 4.2.85 XSD Description for the "hottext" Global Element

Table 4.2.86 XSD Description for the "hottextInteraction" Global Element

Table 4.2.87 XSD Description for the "hr" Global Element

Table 4.2.88 XSD Description for the "i" Global Element

Table 4.2.89 XSD Description for the "img" Global Element

Table 4.2.90 XSD Description for the "xi:include" Global Element

Table 4.2.91 XSD Description for the "index" Global Element

Table 4.2.92 XSD Description for the "infoControl" Global Element

Table 4.2.93 XSD Description for the "inlineChoice" Global Element

Table 4.2.94 XSD Description for the "inlineChoiceInteraction" Global Element

Table 4.2.95 XSD Description for the "inside" Global Element

Table 4.2.96 XSD Description for the "integerDivide" Global Element

Table 4.2.97 XSD Description for the "integerModulus" Global Element

Table 4.2.98 XSD Description for the "integerToFloat" Global Element

Table 4.2.99 XSD Description for the "interpolationTable" Global Element

Table 4.2.100 XSD Description for the "interpolationTableEntry" Global Element

Table 4.2.101 XSD Description for the "isNull" Global Element

Table 4.2.102 XSD Description for the "itemBody" Global Element

Table 4.2.103 XSD Description for the "itemSessionControl" Global Element

Table 4.2.104 XSD Description for the "kbd" Global Element

Table 4.2.105 XSD Description for the "qh5:label" Global Element

Table 4.2.106 XSD Description for the "label" Global Element

Table 4.2.107 XSD Description for the "lcm" Global Element

Table 4.2.108 XSD Description for the "li" Global Element

Table 4.2.109 XSD Description for the "lookupOutcomeValue" Global Element

Table 4.2.110 XSD Description for the "lt" Global Element

Table 4.2.111 XSD Description for the "lte" Global Element

Table 4.2.112 XSD Description for the "mapEntry" Global Element

Table 4.2.113 XSD Description for the "mapping" Global Element

Table 4.2.114 XSD Description for the "mapResponse" Global Element

Table 4.2.115 XSD Description for the "mapResponsePoint" Global Element

Table 4.2.116 XSD Description for the "ssml11:mark" Global Element

Table 4.2.117 XSD Description for the "match" Global Element

Table 4.2.118 XSD Description for the "matchInteraction" Global Element

Table 4.2.119 XSD Description for the "matchTable" Global Element

Table 4.2.120 XSD Description for the "matchTableEntry" Global Element

Table 4.2.121 XSD Description for the "m2:math" Global Element

Table 4.2.122 XSD Description for the "m3:math" Global Element

Table 4.2.123 XSD Description for the "mathConstant" Global Element

Table 4.2.124 XSD Description for the "mathOperator" Global Element

Table 4.2.125 XSD Description for the "max" Global Element

Table 4.2.126 XSD Description for the "mediaInteraction" Global Element

Table 4.2.127 XSD Description for the "member" Global Element

Table 4.2.128 XSD Description for the "min" Global Element

Table 4.2.129 XSD Description for the "minInclusive" Global Element

Table 4.2.130 XSD Description for the "modalFeedback" Global Element

Table 4.2.131 XSD Description for the "multiple" Global Element

Table 4.2.132 XSD Description for the "qh5:nav" Global Element

Table 4.2.133 XSD Description for the "not" Global Element

Table 4.2.134 XSD Description for the "null" Global Element

Table 4.2.135 XSD Description for the "numberCorrect" Global Element

Table 4.2.136 XSD Description for the "numberIncorrect" Global Element

Table 4.2.137 XSD Description for the "numberPresented" Global Element

Table 4.2.138 XSD Description for the "numberResponded" Global Element

Table 4.2.139 XSD Description for the "numberSelected" Global Element

Table 4.2.140 XSD Description for the "object" Global Element

Table 4.2.141 XSD Description for the "ol" Global Element

Table 4.2.142 XSD Description for the "or" Global Element

Table 4.2.143 XSD Description for the "ordered" Global Element

Table 4.2.144 XSD Description for the "ordering" Global Element

Table 4.2.145 XSD Description for the "orderInteraction" Global Element

Table 4.2.146 XSD Description for the "outcomeCondition" Global Element

Table 4.2.147 XSD Description for the "outcomeElse" Global Element

Table 4.2.148 XSD Description for the "outcomeElseIf" Global Element

Table 4.2.149 XSD Description for the "outcomeIf" Global Element

Table 4.2.150 XSD Description for the "outcomeMaximum" Global Element

Table 4.2.151 XSD Description for the "outcomeMinimum" Global Element

Table 4.2.152 XSD Description for the "outcomeProcessing" Global Element

Table 4.2.153 XSD Description for the "outcomeProcessingFragment" Global Element

Table 4.2.154 XSD Description for the "p" Global Element

Table 4.2.155 XSD Description for the "ssml11:p" Global Element

Table 4.2.156 XSD Description for the "param" Global Element

Table 4.2.157 XSD Description for the "patternMatch" Global Element

Table 4.2.158 XSD Description for the "ssml11:phoneme" Global Element

Table 4.2.159 XSD Description for the "positionObjectInteraction" Global Element

Table 4.2.160 XSD Description for the "positionObjectStage" Global Element

Table 4.2.161 XSD Description for the "power" Global Element

Table 4.2.162 XSD Description for the "pre" Global Element

Table 4.2.163 XSD Description for the "preCondition" Global Element

Table 4.2.164 XSD Description for the "printedVariable" Global Element

Table 4.2.165 XSD Description for the "product" Global Element

Table 4.2.166 XSD Description for the "prompt" Global Element

Table 4.2.167 XSD Description for the "ssml11:prosody" Global Element

Table 4.2.168 XSD Description for the "q" Global Element

Table 4.2.169 XSD Description for the "random" Global Element

Table 4.2.170 XSD Description for the "randomFloat" Global Element

Table 4.2.171 XSD Description for the "randomInteger" Global Element

Table 4.2.172 XSD Description for the "repeat" Global Element

Table 4.2.173 XSD Description for the "responseCondition" Global Element

Table 4.2.174 XSD Description for the "responseDeclaration" Global Element

Table 4.2.175 XSD Description for the "responseElse" Global Element

Table 4.2.176 XSD Description for the "responseElseIf" Global Element

Table 4.2.177 XSD Description for the "responseIf" Global Element

Table 4.2.178 XSD Description for the "responseProcessingFragment" Global Element

Table 4.2.179 XSD Description for the "round" Global Element

Table 4.2.180 XSD Description for the "roundTo" Global Element

Table 4.2.181 XSD Description for the "rubricBlock" Global Element

Table 4.2.182 XSD Description for the "qh5:ruby" Global Element

Table 4.2.183 XSD Description for the "ssml11:s" Global Element

Table 4.2.184 XSD Description for the "samp" Global Element

Table 4.2.185 XSD Description for the "ssml11:say-as" Global Element

Table 4.2.186 XSD Description for the "qh5:section" Global Element

Table 4.2.187 XSD Description for the "selection" Global Element

Table 4.2.188 XSD Description for the "selectPointInteraction" Global Element

Table 4.2.189 XSD Description for the "setCorrectResponse" Global Element

Table 4.2.190 XSD Description for the "setDefaultValue" Global Element

Table 4.2.191 XSD Description for the "setOutcomeValue" Global Element

Table 4.2.192 XSD Description for the "setTemplateValue" Global Element

Table 4.2.193 XSD Description for the "simpleAssociableChoice" Global Element

Table 4.2.194 XSD Description for the "simpleChoice" Global Element

Table 4.2.195 XSD Description for the "simpleMatchSet" Global Element

Table 4.2.196 XSD Description for the "sliderInteraction" Global Element

Table 4.2.197 XSD Description for the "small" Global Element

Table 4.2.198 XSD Description for the "span" Global Element

Table 4.2.199 XSD Description for the "ssml11:speak" Global Element

Table 4.2.200 XSD Description for the "statsOperator" Global Element

Table 4.2.201 XSD Description for the "stimulusBody" Global Element

Table 4.2.202 XSD Description for the "stringMatch" Global Element

Table 4.2.203 XSD Description for the "strong" Global Element

Table 4.2.204 XSD Description for the "stylesheet" Global Element

Table 4.2.205 XSD Description for the "sub" Global Element

Table 4.2.206 XSD Description for the "ssml11:sub" Global Element

Table 4.2.207 XSD Description for the "substring" Global Element

Table 4.2.208 XSD Description for the "subtract" Global Element

Table 4.2.209 XSD Description for the "sum" Global Element

Table 4.2.210 XSD Description for the "sup" Global Element

Table 4.2.211 XSD Description for the "table" Global Element

Table 4.2.212 XSD Description for the "tbody" Global Element

Table 4.2.213 XSD Description for the "td" Global Element

Table 4.2.214 XSD Description for the "templateBlock" Global Element

Table 4.2.215 XSD Description for the "templateCondition" Global Element

Table 4.2.216 XSD Description for the "templateConstraint" Global Element

Table 4.2.217 XSD Description for the "templateDeclaration" Global Element

Table 4.2.218 XSD Description for the "templateDefault" Global Element

Table 4.2.219 XSD Description for the "templateElse" Global Element

Table 4.2.220 XSD Description for the "templateElseIf" Global Element

Table 4.2.221 XSD Description for the "templateIf" Global Element

Table 4.2.222 XSD Description for the "templateInline" Global Element

Table 4.2.223 XSD Description for the "templateProcessing" Global Element

Table 4.2.224 XSD Description for the "testFeedback" Global Element

Table 4.2.225 XSD Description for the "testPart" Global Element

Table 4.2.226 XSD Description for the "testVariables" Global Element

Table 4.2.227 XSD Description for the "textEntryInteraction" Global Element

Table 4.2.228 XSD Description for the "tfoot" Global Element

Table 4.2.229 XSD Description for the "th" Global Element

Table 4.2.230 XSD Description for the "thead" Global Element

Table 4.2.231 XSD Description for the "timeLimits" Global Element

Table 4.2.232 XSD Description for the "tr" Global Element

Table 4.2.233 XSD Description for the "truncate" Global Element

Table 4.2.234 XSD Description for the "tt" Global Element

Table 4.2.235 XSD Description for the "ul" Global Element

Table 4.2.236 XSD Description for the "uploadInteraction" Global Element

Table 4.2.237 XSD Description for the "value" Global Element

Table 4.2.238 XSD Description for the "var" Global Element

Table 4.2.239 XSD Description for the "variable" Global Element

Table 4.2.240 XSD Description for the "variableMapping" Global Element

Table 4.2.241 XSD Description for the "qh5:video" Global Element

Table 4.2.242 XSD Description for the "ssml11:voice" Global Element

Table 4.2.243 XSD Description for the "weight" Global Element

Table 4.3.1 XSD Description for the "abbr.TDH.Attr" Attribute Group

Table 4.3.2 XSD Description for the "access.TestFeedback.Attr" Attribute Group

Table 4.3.3 XSD Description for the "adaptive.AssessmentItem.Attr" Attribute Group

Table 4.3.4 XSD Description for the "align.TDH.Attr" Attribute Group

Table 4.3.5 XSD Description for the "allowComment.ItemSessionControl.Attr" Attribute Group

Table 4.3.6 XSD Description for the "allowLateSubmission.TimeLimits.Attr" Attribute Group

Table 4.3.7 XSD Description for the "allowReview.ItemSessionControl.Attr" Attribute Group

Table 4.3.8 XSD Description for the "allowSkipping.ItemSessionControl.Attr" Attribute Group

Table 4.3.9 XSD Description for the "alt.Img.Attr" Attribute Group

Table 4.3.10 XSD Description for the "aria-controls.BasePromptInteraction.Attr" Attribute Group

Table 4.3.11 XSD Description for the "aria-controls.BaseSequence.Attr" Attribute Group

Table 4.3.12 XSD Description for the "aria-controls.BaseSequenceFull.Attr" Attribute Group

Table 4.3.13 XSD Description for the "aria-controls.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.14 XSD Description for the "aria-controls.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.15 XSD Description for the "aria-controls.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.16 XSD Description for the "aria-describedby.BasePromptInteraction.Attr" Attribute Group

Table 4.3.17 XSD Description for the "aria-describedby.BaseSequence.Attr" Attribute Group

Table 4.3.18 XSD Description for the "aria-describedby.BaseSequenceFull.Attr" Attribute Group

Table 4.3.19 XSD Description for the "aria-describedby.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.20 XSD Description for the "aria-describedby.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.21 XSD Description for the "aria-describedby.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.22 XSD Description for the "aria-flowsto.BasePromptInteraction.Attr" Attribute Group

Table 4.3.23 XSD Description for the "aria-flowsto.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.24 XSD Description for the "aria-flowto.BaseSequence.Attr" Attribute Group

Table 4.3.25 XSD Description for the "aria-flowto.BaseSequenceFull.Attr" Attribute Group

Table 4.3.26 XSD Description for the "aria-flowto.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.27 XSD Description for the "aria-flowto.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.28 XSD Description for the "aria-label.BasePromptInteraction.Attr" Attribute Group

Table 4.3.29 XSD Description for the "aria-label.BaseSequence.Attr" Attribute Group

Table 4.3.30 XSD Description for the "aria-label.BaseSequenceFull.Attr" Attribute Group

Table 4.3.31 XSD Description for the "aria-label.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.32 XSD Description for the "aria-label.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.33 XSD Description for the "aria-label.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.34 XSD Description for the "aria-labelledby.BasePromptInteraction.Attr" Attribute Group

Table 4.3.35 XSD Description for the "aria-labelledby.BaseSequence.Attr" Attribute Group

Table 4.3.36 XSD Description for the "aria-labelledby.BaseSequenceFull.Attr" Attribute Group

Table 4.3.37 XSD Description for the "aria-labelledby.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.38 XSD Description for the "aria-labelledby.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.39 XSD Description for the "aria-labelledby.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.40 XSD Description for the "aria-level.BasePromptInteraction.Attr" Attribute Group

Table 4.3.41 XSD Description for the "aria-level.BaseSequence.Attr" Attribute Group

Table 4.3.42 XSD Description for the "aria-level.BaseSequenceFull.Attr" Attribute Group

Table 4.3.43 XSD Description for the "aria-level.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.44 XSD Description for the "aria-level.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.45 XSD Description for the "aria-level.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.46 XSD Description for the "aria-live.BasePromptInteraction.Attr" Attribute Group

Table 4.3.47 XSD Description for the "aria-live.BaseSequence.Attr" Attribute Group

Table 4.3.48 XSD Description for the "aria-live.BaseSequenceFull.Attr" Attribute Group

Table 4.3.49 XSD Description for the "aria-live.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.50 XSD Description for the "aria-live.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.51 XSD Description for the "aria-live.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.52 XSD Description for the "aria-orientation.BasePromptInteraction.Attr" Attribute Group

Table 4.3.53 XSD Description for the "aria-orientation.BaseSequence.Attr" Attribute Group

Table 4.3.54 XSD Description for the "aria-orientation.BaseSequenceFull.Attr" Attribute Group

Table 4.3.55 XSD Description for the "aria-orientation.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.56 XSD Description for the "aria-orientation.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.57 XSD Description for the "aria-orientation.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.58 XSD Description for the "aria-owns.BasePromptInteraction.Attr" Attribute Group

Table 4.3.59 XSD Description for the "aria-owns.BaseSequence.Attr" Attribute Group

Table 4.3.60 XSD Description for the "aria-owns.BaseSequenceFull.Attr" Attribute Group

Table 4.3.61 XSD Description for the "aria-owns.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.62 XSD Description for the "aria-owns.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.63 XSD Description for the "aria-owns.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.64 XSD Description for the "autostart.MediaInteraction.Attr" Attribute Group

Table 4.3.65 XSD Description for the "axis.TDH.Attr" Attribute Group

Table 4.3.66 XSD Description for the "base.BasePromptInteraction.Attr" Attribute Group

Table 4.3.67 XSD Description for the "base.BaseSequenceFull.Attr" Attribute Group

Table 4.3.68 XSD Description for the "base.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.69 XSD Description for the "base.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.70 XSD Description for the "base.ExtendedTextInteraction.Attr" Attribute Group

Table 4.3.71 XSD Description for the "base.PrintedVariable.Attr" Attribute Group

Table 4.3.72 XSD Description for the "base.TextEntryInteraction.Attr" Attribute Group

Table 4.3.73 XSD Description for the "baseType.BaseValue.Attr" Attribute Group

Table 4.3.74 XSD Description for the "baseType.OutcomeDeclaration.Attr" Attribute Group

Table 4.3.75 XSD Description for the "baseType.ResponseDeclaration.Attr" Attribute Group

Table 4.3.76 XSD Description for the "baseType.TemplateDeclaration.Attr" Attribute Group

Table 4.3.77 XSD Description for the "baseType.TestVariables.Attr" Attribute Group

Table 4.3.78 XSD Description for the "baseType.Value.Attr" Attribute Group

Table 4.3.79 XSD Description for the "baseuri.PrintedVariable.Attr" Attribute Group

Table 4.3.80 XSD Description for the "cardinality.OutcomeDeclaration.Attr" Attribute Group

Table 4.3.81 XSD Description for the "cardinality.ResponseDeclaration.Attr" Attribute Group

Table 4.3.82 XSD Description for the "cardinality.TemplateDeclaration.Attr" Attribute Group

Table 4.3.83 XSD Description for the "caseSensitive.MapEntry.Attr" Attribute Group

Table 4.3.84 XSD Description for the "caseSensitive.StringMatch.Attr" Attribute Group

Table 4.3.85 XSD Description for the "caseSensitive.Substring.Attr" Attribute Group

Table 4.3.86 XSD Description for the "category.AssessmentItemRef.Attr" Attribute Group

Table 4.3.87 XSD Description for the "centerPoint.PositionObjectInteraction.Attr" Attribute Group

Table 4.3.88 XSD Description for the "cite.BlockQuote.Attr" Attribute Group

Table 4.3.89 XSD Description for the "cite.Q.Attr" Attribute Group

Table 4.3.90 XSD Description for the "class.BasePromptInteraction.Attr" Attribute Group

Table 4.3.91 XSD Description for the "class.BaseSequence.Attr" Attribute Group

Table 4.3.92 XSD Description for the "class.BaseSequenceFull.Attr" Attribute Group

Table 4.3.93 XSD Description for the "class.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.94 XSD Description for the "class.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.95 XSD Description for the "class.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.96 XSD Description for the "class.CustomOperator.Attr" Attribute Group

Table 4.3.97 XSD Description for the "class.ItemBody.Attr" Attribute Group

Table 4.3.98 XSD Description for the "class.PrintedVariable.Attr" Attribute Group

Table 4.3.99 XSD Description for the "colspan.TDH.Attr" Attribute Group

Table 4.3.100 XSD Description for the "coords.AreaMapEntry.Attr" Attribute Group

Table 4.3.101 XSD Description for the "coords.AssociableHotspot.Attr" Attribute Group

Table 4.3.102 XSD Description for the "coords.HotspotChoice.Attr" Attribute Group

Table 4.3.103 XSD Description for the "coords.Inside.Attr" Attribute Group

Table 4.3.104 XSD Description for the "coords.MediaInteraction.Attr" Attribute Group

Table 4.3.105 XSD Description for the "countAttempt.EndAttemptInteraction.Attr" Attribute Group

Table 4.3.106 XSD Description for the "data.Object.Attr" Attribute Group

Table 4.3.107 XSD Description for the "dataExtension.BasePromptInteraction.Attr" Attribute Group

Table 4.3.108 XSD Description for the "dataExtension.BaseSequence.Attr" Attribute Group

Table 4.3.109 XSD Description for the "dataExtension.BaseSequenceFull.Attr" Attribute Group

Table 4.3.110 XSD Description for the "dataExtension.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.111 XSD Description for the "dataExtension.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.112 XSD Description for the "dataExtension.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.113 XSD Description for the "defaultValue.AreaMapping.Attr" Attribute Group

Table 4.3.114 XSD Description for the "defaultValue.InterpolationTable.Attr" Attribute Group

Table 4.3.115 XSD Description for the "defaultValue.Mapping.Attr" Attribute Group

Table 4.3.116 XSD Description for the "defaultValue.MatchTable.Attr" Attribute Group

Table 4.3.117 XSD Description for the "definition.CustomOperator.Attr" Attribute Group

Table 4.3.118 XSD Description for the "delimiter.PrintedVariable.Attr" Attribute Group

Table 4.3.119 XSD Description for the "dir.BasePromptInteraction.Attr" Attribute Group

Table 4.3.120 XSD Description for the "dir.BaseSequence.Attr" Attribute Group

Table 4.3.121 XSD Description for the "dir.BaseSequenceFull.Attr" Attribute Group

Table 4.3.122 XSD Description for the "dir.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.123 XSD Description for the "dir.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.124 XSD Description for the "dir.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.125 XSD Description for the "dir.ItemBody.Attr" Attribute Group

Table 4.3.126 XSD Description for the "excludeCategory.Number.Attr" Attribute Group

Table 4.3.127 XSD Description for the "excludeCategory.OutcomeMinMax.Attr" Attribute Group

Table 4.3.128 XSD Description for the "excludeCategory.TestVariables.Attr" Attribute Group

Table 4.3.129 XSD Description for the "expectedLength.ExtendedTextInteraction.Attr" Attribute Group

Table 4.3.130 XSD Description for the "expectedLength.TextEntryInteraction.Attr" Attribute Group

Table 4.3.131 XSD Description for the "expectedLines.ExtendedTextInteraction.Attr" Attribute Group

Table 4.3.132 XSD Description for the "extension.CustomInteraction.Attr" Attribute Group

Table 4.3.133 XSD Description for the "extension.CustomOperator.Attr" Attribute Group

Table 4.3.134 XSD Description for the "extension.Ordering.Attr" Attribute Group

Table 4.3.135 XSD Description for the "extension.Selection.Attr" Attribute Group

Table 4.3.136 XSD Description for the "externalScored.OutcomeDeclaration.Attr" Attribute Group

Table 4.3.137 XSD Description for the "field.PrintedVariable.Attr" Attribute Group

Table 4.3.138 XSD Description for the "fieldIdentifier.FieldValue.Attr" Attribute Group

Table 4.3.139 XSD Description for the "fieldIdentifier.Value.Attr" Attribute Group

Table 4.3.140 XSD Description for the "figures.EqualRounded.Attr" Attribute Group

Table 4.3.141 XSD Description for the "figures.RoundTo.Attr" Attribute Group

Table 4.3.142 XSD Description for the "fixed.AssessmentItemRef.Attr" Attribute Group

Table 4.3.143 XSD Description for the "fixed.AssessmentSection.Attr" Attribute Group

Table 4.3.144 XSD Description for the "fixed.InlineChoice.Attr" Attribute Group

Table 4.3.145 XSD Description for the "fixed.SimpleAssociableChoice.Attr" Attribute Group

Table 4.3.146 XSD Description for the "fixed.SimpleChoice.Attr" Attribute Group

Table 4.3.147 XSD Description for the "format.ExtendedTextInteraction.Attr" Attribute Group

Table 4.3.148 XSD Description for the "format.PrintedVariable.Attr" Attribute Group

Table 4.3.149 XSD Description for the "format.TextEntryInteraction.Attr" Attribute Group

Table 4.3.150 XSD Description for the "headers.TDH.Attr" Attribute Group

Table 4.3.151 XSD Description for the "height.Img.Attr" Attribute Group

Table 4.3.152 XSD Description for the "height.Object.Attr" Attribute Group

Table 4.3.153 XSD Description for the "hotspotLabel.AssociableHotspot.Attr" Attribute Group

Table 4.3.154 XSD Description for the "hotspotLabel.HotspotChoice.Attr" Attribute Group

Table 4.3.155 XSD Description for the "href.A.Attr" Attribute Group

Table 4.3.156 XSD Description for the "href.AssessmentItemRef.Attr" Attribute Group

Table 4.3.157 XSD Description for the "href.AssessmentSectionRef.Attr" Attribute Group

Table 4.3.158 XSD Description for the "href.AssessmentStimulusRef.Attr" Attribute Group

Table 4.3.159 XSD Description for the "href.StyleSheet.Attr" Attribute Group

Table 4.3.160 XSD Description for the "id.BasePromptInteraction.Attr" Attribute Group

Table 4.3.161 XSD Description for the "id.BaseSequence.Attr" Attribute Group

Table 4.3.162 XSD Description for the "id.BaseSequenceFull.Attr" Attribute Group

Table 4.3.163 XSD Description for the "id.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.164 XSD Description for the "id.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.165 XSD Description for the "id.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.166 XSD Description for the "id.ItemBody.Attr" Attribute Group

Table 4.3.167 XSD Description for the "id.PositionObjectStage.Attr" Attribute Group

Table 4.3.168 XSD Description for the "id.PrintedVariable.Attr" Attribute Group

Table 4.3.169 XSD Description for the "id.SimpleMatchSet.Attr" Attribute Group

Table 4.3.170 XSD Description for the "identifier.AssessmentItem.Attr" Attribute Group

Table 4.3.171 XSD Description for the "identifier.AssessmentItemRef.Attr" Attribute Group

Table 4.3.172 XSD Description for the "identifier.AssessmentSection.Attr" Attribute Group

Table 4.3.173 XSD Description for the "identifier.AssessmentSectionRef.Attr" Attribute Group

Table 4.3.174 XSD Description for the "identifier.AssessmentStimulus.Attr" Attribute Group

Table 4.3.175 XSD Description for the "identifier.AssessmentStimulusRef.Attr" Attribute Group

Table 4.3.176 XSD Description for the "identifier.AssessmentTest.Attr" Attribute Group

Table 4.3.177 XSD Description for the "identifier.AssociableHotspot.Attr" Attribute Group

Table 4.3.178 XSD Description for the "identifier.Correct.Attr" Attribute Group

Table 4.3.179 XSD Description for the "identifier.Default.Attr" Attribute Group

Table 4.3.180 XSD Description for the "identifier.FeedbackBlock.Attr" Attribute Group

Table 4.3.181 XSD Description for the "identifier.FeedbackInline.Attr" Attribute Group

Table 4.3.182 XSD Description for the "identifier.Gap.Attr" Attribute Group

Table 4.3.183 XSD Description for the "identifier.GapImg.Attr" Attribute Group

Table 4.3.184 XSD Description for the "identifier.GapText.Attr" Attribute Group

Table 4.3.185 XSD Description for the "identifier.HotText.Attr" Attribute Group

Table 4.3.186 XSD Description for the "identifier.HotspotChoice.Attr" Attribute Group

Table 4.3.187 XSD Description for the "identifier.InlineChoice.Attr" Attribute Group

Table 4.3.188 XSD Description for the "identifier.LookupOutcomeValue.Attr" Attribute Group

Table 4.3.189 XSD Description for the "identifier.MapResponse.Attr" Attribute Group

Table 4.3.190 XSD Description for the "identifier.ModalFeedback.Attr" Attribute Group

Table 4.3.191 XSD Description for the "identifier.OutcomeDeclaration.Attr" Attribute Group

Table 4.3.192 XSD Description for the "identifier.PrintedVariable.Attr" Attribute Group

Table 4.3.193 XSD Description for the "identifier.ResponseDeclaration.Attr" Attribute Group

Table 4.3.194 XSD Description for the "identifier.RubricBlockTemplateBlock.Attr" Attribute Group

Table 4.3.195 XSD Description for the "identifier.RubricBlockTemplateInline.Attr" Attribute Group

Table 4.3.196 XSD Description for the "identifier.SetValue.Attr" Attribute Group

Table 4.3.197 XSD Description for the "identifier.SimpleAssociableChoice.Attr" Attribute Group

Table 4.3.198 XSD Description for the "identifier.SimpleChoice.Attr" Attribute Group

Table 4.3.199 XSD Description for the "identifier.TemplateBlock.Attr" Attribute Group

Table 4.3.200 XSD Description for the "identifier.TemplateBlockFeedbackBlock.Attr" Attribute Group

Table 4.3.201 XSD Description for the "identifier.TemplateDeclaration.Attr" Attribute Group

Table 4.3.202 XSD Description for the "identifier.TemplateInline.Attr" Attribute Group

Table 4.3.203 XSD Description for the "identifier.TestFeedback.Attr" Attribute Group

Table 4.3.204 XSD Description for the "identifier.TestPart.Attr" Attribute Group

Table 4.3.205 XSD Description for the "identifier.Variable.Attr" Attribute Group

Table 4.3.206 XSD Description for the "identifier.Weight.Attr" Attribute Group

Table 4.3.207 XSD Description for the "includeBoundary.InterpolationTableEntry.Attr" Attribute Group

Table 4.3.208 XSD Description for the "includeCategory.Number.Attr" Attribute Group

Table 4.3.209 XSD Description for the "includeCategory.OutcomeMinMax.Attr" Attribute Group

Table 4.3.210 XSD Description for the "includeCategory.TestVariables.Attr" Attribute Group

Table 4.3.211 XSD Description for the "includeLowerBound.Equal.Attr" Attribute Group

Table 4.3.212 XSD Description for the "includeUpperBound.Equal.Attr" Attribute Group

Table 4.3.213 XSD Description for the "index.PrintedVariable.Attr" Attribute Group

Table 4.3.214 XSD Description for the "interpretation.CorrectResponse.Attr" Attribute Group

Table 4.3.215 XSD Description for the "interpretation.DefaultValue.Attr" Attribute Group

Table 4.3.216 XSD Description for the "interpretation.OutcomeDeclaration.Attr" Attribute Group

Table 4.3.217 XSD Description for the "keepTogether.AssessmentSection.Attr" Attribute Group

Table 4.3.218 XSD Description for the "label.AssessmentItem.Attr" Attribute Group

Table 4.3.219 XSD Description for the "label.AssessmentStimulus.Attr" Attribute Group

Table 4.3.220 XSD Description for the "label.BasePromptInteraction.Attr" Attribute Group

Table 4.3.221 XSD Description for the "label.BaseSequence.Attr" Attribute Group

Table 4.3.222 XSD Description for the "label.BaseSequenceFull.Attr" Attribute Group

Table 4.3.223 XSD Description for the "label.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.224 XSD Description for the "label.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.225 XSD Description for the "label.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.226 XSD Description for the "label.ItemBody.Attr" Attribute Group

Table 4.3.227 XSD Description for the "label.PrintedVariable.Attr" Attribute Group

Table 4.3.228 XSD Description for the "language.AssessmentItem.Attr" Attribute Group

Table 4.3.229 XSD Description for the "language.AssessmentStimulus.Attr" Attribute Group

Table 4.3.230 XSD Description for the "language.BasePromptInteraction.Attr" Attribute Group

Table 4.3.231 XSD Description for the "language.BaseSequence.Attr" Attribute Group

Table 4.3.232 XSD Description for the "language.BaseSequenceFull.Attr" Attribute Group

Table 4.3.233 XSD Description for the "language.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.234 XSD Description for the "language.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.235 XSD Description for the "language.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.236 XSD Description for the "language.ItemBody.Attr" Attribute Group

Table 4.3.237 XSD Description for the "language.PrintedVariable.Attr" Attribute Group

Table 4.3.238 XSD Description for the "left.GapImg.Attr" Attribute Group

Table 4.3.239 XSD Description for the "longdesc.Img.Attr" Attribute Group

Table 4.3.240 XSD Description for the "longInterpretation.OutcomeDeclaration.Attr" Attribute Group

Table 4.3.241 XSD Description for the "loop.MediaInteraction.Attr" Attribute Group

Table 4.3.242 XSD Description for the "lowerBound.AreaMapping.Attr" Attribute Group

Table 4.3.243 XSD Description for the "lowerBound.Mapping.Attr" Attribute Group

Table 4.3.244 XSD Description for the "lowerBound.SliderInteraction.Attr" Attribute Group

Table 4.3.245 XSD Description for the "mapKey.MapEntry.Attr" Attribute Group

Table 4.3.246 XSD Description for the "mappedValue.AreaMapEntry.Attr" Attribute Group

Table 4.3.247 XSD Description for the "mappedValue.MapEntry.Attr" Attribute Group

Table 4.3.248 XSD Description for the "mappingIndicator.PrintedVariable.Attr" Attribute Group

Table 4.3.249 XSD Description for the "masteryValue.OutcomeDeclaration.Attr" Attribute Group

Table 4.3.250 XSD Description for the "matchGroup.AssociableHotspot.Attr" Attribute Group

Table 4.3.251 XSD Description for the "matchGroup.Gap.Attr" Attribute Group

Table 4.3.252 XSD Description for the "matchGroup.GapImg.Attr" Attribute Group

Table 4.3.253 XSD Description for the "matchGroup.GapText.Attr" Attribute Group

Table 4.3.254 XSD Description for the "matchGroup.SimpleAssociableChoice.Attr" Attribute Group

Table 4.3.255 XSD Description for the "matchMax.AssociableHotspot.Attr" Attribute Group

Table 4.3.256 XSD Description for the "matchMax.GapImg.Attr" Attribute Group

Table 4.3.257 XSD Description for the "matchMax.GapText.Attr" Attribute Group

Table 4.3.258 XSD Description for the "matchMax.SimpleAssociableChoice.Attr" Attribute Group

Table 4.3.259 XSD Description for the "matchMin.AssociableHotspot.Attr" Attribute Group

Table 4.3.260 XSD Description for the "matchMin.GapImg.Attr" Attribute Group

Table 4.3.261 XSD Description for the "matchMin.GapText.Attr" Attribute Group

Table 4.3.262 XSD Description for the "matchMin.SimpleAssociableChoice.Attr" Attribute Group

Table 4.3.263 XSD Description for the "mathVariable.TemplateDeclaration.Attr" Attribute Group

Table 4.3.264 XSD Description for the "max.AnyN.Attr" Attribute Group

Table 4.3.265 XSD Description for the "max.RandomFloat.Attr" Attribute Group

Table 4.3.266 XSD Description for the "max.RandomInteger.Attr" Attribute Group

Table 4.3.267 XSD Description for the "maxAssociations.AssociateInteraction.Attr" Attribute Group

Table 4.3.268 XSD Description for the "maxAssociations.GapMatchInteraction.Attr" Attribute Group

Table 4.3.269 XSD Description for the "maxAssociations.GraphicAssociateInteraction.Attr" Attribute Group

Table 4.3.270 XSD Description for the "maxAssociations.GraphicGapMatchInteraction.Attr" Attribute Group

Table 4.3.271 XSD Description for the "maxAssociations.MatchInteraction.Attr" Attribute Group

Table 4.3.272 XSD Description for the "maxAttempts.ItemSessionControl.Attr" Attribute Group

Table 4.3.273 XSD Description for the "maxChoices.ChoiceInteraction.Attr" Attribute Group

Table 4.3.274 XSD Description for the "maxChoices.GraphicOrderInteraction.Attr" Attribute Group

Table 4.3.275 XSD Description for the "maxChoices.HotTextInteraction.Attr" Attribute Group

Table 4.3.276 XSD Description for the "maxChoices.HotspotInteraction.Attr" Attribute Group

Table 4.3.277 XSD Description for the "maxChoices.OrderInteraction.Attr" Attribute Group

Table 4.3.278 XSD Description for the "maxChoices.PositionObjectInteraction.Attr" Attribute Group

Table 4.3.279 XSD Description for the "maxChoices.SelectPointInteraction.Attr" Attribute Group

Table 4.3.280 XSD Description for the "maxPlays.MediaInteraction.Attr" Attribute Group

Table 4.3.281 XSD Description for the "maxStrings.ExtendedTextInteraction.Attr" Attribute Group

Table 4.3.282 XSD Description for the "maxTime.TimeLimits.Attr" Attribute Group

Table 4.3.283 XSD Description for the "media.StyleSheet.Attr" Attribute Group

Table 4.3.284 XSD Description for the "min.AnyN.Attr" Attribute Group

Table 4.3.285 XSD Description for the "min.RandomFloat.Attr" Attribute Group

Table 4.3.286 XSD Description for the "min.RandomInteger.Attr" Attribute Group

Table 4.3.287 XSD Description for the "minAssociations.AssociateInteraction.Attr" Attribute Group

Table 4.3.288 XSD Description for the "minAssociations.GapMatchInteraction.Attr" Attribute Group

Table 4.3.289 XSD Description for the "minAssociations.GraphicAssociateInteraction.Attr" Attribute Group

Table 4.3.290 XSD Description for the "minAssociations.GraphicGapMatchInteraction.Attr" Attribute Group

Table 4.3.291 XSD Description for the "minAssociations.MatchInteraction.Attr" Attribute Group

Table 4.3.292 XSD Description for the "minChoices.ChoiceInteraction.Attr" Attribute Group

Table 4.3.293 XSD Description for the "minChoices.GraphicOrderInteraction.Attr" Attribute Group

Table 4.3.294 XSD Description for the "minChoices.HotTextInteraction.Attr" Attribute Group

Table 4.3.295 XSD Description for the "minChoices.HotspotInteraction.Attr" Attribute Group

Table 4.3.296 XSD Description for the "minChoices.OrderInteraction.Attr" Attribute Group

Table 4.3.297 XSD Description for the "minChoices.PositionObjectInteraction.Attr" Attribute Group

Table 4.3.298 XSD Description for the "minChoices.SelectPointInteraction.Attr" Attribute Group

Table 4.3.299 XSD Description for the "minPlays.MediaInteraction.Attr" Attribute Group

Table 4.3.300 XSD Description for the "minStrings.ExtendedTextInteraction.Attr" Attribute Group

Table 4.3.301 XSD Description for the "minTime.TimeLimits.Attr" Attribute Group

Table 4.3.302 XSD Description for the "n.Index.Attr" Attribute Group

Table 4.3.303 XSD Description for the "name.MathConstant.Attr" Attribute Group

Table 4.3.304 XSD Description for the "name.MathOperator.Attr" Attribute Group

Table 4.3.305 XSD Description for the "name.Param.Attr" Attribute Group

Table 4.3.306 XSD Description for the "name.StatsOperator.Attr" Attribute Group

Table 4.3.307 XSD Description for the "navigationMode.TestPart.Attr" Attribute Group

Table 4.3.308 XSD Description for the "normalMaximum.OutcomeDeclaration.Attr" Attribute Group

Table 4.3.309 XSD Description for the "normalMinimum.OutcomeDeclaration.Attr" Attribute Group

Table 4.3.310 XSD Description for the "numberRepeats.Repeat.Attr" Attribute Group

Table 4.3.311 XSD Description for the "objectLabel.GapImg.Attr" Attribute Group

Table 4.3.312 XSD Description for the "orientation.ChoiceInteraction.Attr" Attribute Group

Table 4.3.313 XSD Description for the "orientation.OrderInteraction.Attr" Attribute Group

Table 4.3.314 XSD Description for the "orientation.SliderInteraction.Attr" Attribute Group

Table 4.3.315 XSD Description for the "outcomeIdentifier.FeedbackBlock.Attr" Attribute Group

Table 4.3.316 XSD Description for the "outcomeIdentifier.FeedbackInline.Attr" Attribute Group

Table 4.3.317 XSD Description for the "outcomeIdentifier.ModalFeedback.Attr" Attribute Group

Table 4.3.318 XSD Description for the "outcomeIdentifier.OutcomeMinMax.Attr" Attribute Group

Table 4.3.319 XSD Description for the "outcomeIdentifier.TemplateBlockFeedbackBlock.Attr" Attribute Group

Table 4.3.320 XSD Description for the "outcomeIdentifier.TestFeedback.Attr" Attribute Group

Table 4.3.321 XSD Description for the "paramVariable.TemplateDeclaration.Attr" Attribute Group

Table 4.3.322 XSD Description for the "pattern.PatternMatch.Attr" Attribute Group

Table 4.3.323 XSD Description for the "patternMask.ExtendedTextInteraction.Attr" Attribute Group

Table 4.3.324 XSD Description for the "patternMask.TextEntryInteraction.Attr" Attribute Group

Table 4.3.325 XSD Description for the "placeholderText.ExtendedTextInteraction.Attr" Attribute Group

Table 4.3.326 XSD Description for the "placeholderText.TextEntryInteraction.Attr" Attribute Group

Table 4.3.327 XSD Description for the "powerForm.PrintedVariable.Attr" Attribute Group

Table 4.3.328 XSD Description for the "required.AssessmentItemRef.Attr" Attribute Group

Table 4.3.329 XSD Description for the "required.AssessmentSection.Attr" Attribute Group

Table 4.3.330 XSD Description for the "required.Gap.Attr" Attribute Group

Table 4.3.331 XSD Description for the "required.InlineChoiceInteraction.Attr" Attribute Group

Table 4.3.332 XSD Description for the "responseIdentifier.BasePromptInteraction.Attr" Attribute Group

Table 4.3.333 XSD Description for the "responseIdentifier.BaseSequenceFull.Attr" Attribute Group

Table 4.3.334 XSD Description for the "responseIdentifier.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.335 XSD Description for the "responseIdentifier.EndAttemptInteraction.Attr" Attribute Group

Table 4.3.336 XSD Description for the "responseIdentifier.TextEntryInteraction.Attr" Attribute Group

Table 4.3.337 XSD Description for the "reverse.SliderInteraction.Attr" Attribute Group

Table 4.3.338 XSD Description for the "role.BasePromptInteraction.Attr" Attribute Group

Table 4.3.339 XSD Description for the "role.BaseSequence.Attr" Attribute Group

Table 4.3.340 XSD Description for the "role.BaseSequenceFull.Attr" Attribute Group

Table 4.3.341 XSD Description for the "role.BaseSequenceRIdent.Attr" Attribute Group

Table 4.3.342 XSD Description for the "role.BaseSequenceXBase.Attr" Attribute Group

Table 4.3.343 XSD Description for the "role.BaseSequenceXBaseEmpty.Attr" Attribute Group

Table 4.3.344 XSD Description for the "roundingMode.EqualRounded.Attr" Attribute Group

Table 4.3.345 XSD Description for the "roundingMode.RoundTo.Attr" Attribute Group

Table 4.3.346 XSD Description for the "rowspan.TDH.Attr" Attribute Group

Table 4.3.347 XSD Description for the "scope.TDH.Attr" Attribute Group

Table 4.3.348 XSD Description for the "sectionIdentifier.Number.Attr" Attribute Group

Table 4.3.349 XSD Description for the "sectionIdentifier.OutcomeMinMax.Attr" Attribute Group

Table 4.3.350 XSD Description for the "sectionIdentifier.TestVariables.Attr" Attribute Group

Table 4.3.351 XSD Description for the "select.Selection.Attr" Attribute Group

Table 4.3.352 XSD Description for the "shape.AreaMapEntry.Attr" Attribute Group

Table 4.3.353 XSD Description for the "shape.AssociableHotspot.Attr" Attribute Group

Table 4.3.354 XSD Description for the "shape.HotspotChoice.Attr" Attribute Group

Table 4.3.355 XSD Description for the "shape.Inside.Attr" Attribute Group

Table 4.3.356 XSD Description for the "showFeedback.ItemSessionControl.Attr" Attribute Group

Table 4.3.357 XSD Description for the "showHide.AssociableHotspot.Attr" Attribute Group

Table 4.3.358 XSD Description for the "showHide.FeedbackBlock.Attr" Attribute Group

Table 4.3.359 XSD Description for the "showHide.FeedbackInline.Attr" Attribute Group

Table 4.3.360 XSD Description for the "showHide.Gap.Attr" Attribute Group

Table 4.3.361 XSD Description for the "showHide.GapImg.Attr" Attribute Group

Table 4.3.362 XSD Description for the "showHide.GapText.Attr" Attribute Group

Table 4.3.363 XSD Description for the "showHide.HotText.Attr" Attribute Group

Table 4.3.364 XSD Description for the "showHide.HotspotChoice.Attr" Attribute Group

Table 4.3.365 XSD Description for the "showHide.InlineChoice.Attr" Attribute Group

Table 4.3.366 XSD Description for the "showHide.ModalFeedback.Attr" Attribute Group

Table 4.3.367 XSD Description for the "showHide.RubricBlockTemplateBlock.Attr" Attribute Group

Table 4.3.368 XSD Description for the "showHide.RubricBlockTemplateInline.Attr" Attribute Group

Table 4.3.369 XSD Description for the "showHide.SimpleAssociableChoice.Attr" Attribute Group

Table 4.3.370 XSD Description for the "showHide.SimpleChoice.Attr" Attribute Group

Table 4.3.371 XSD Description for the "showHide.TemplateBlock.Attr" Attribute Group

Table 4.3.372 XSD Description for the "showHide.TemplateBlockFeedbackBlock.Attr" Attribute Group

Table 4.3.373 XSD Description for the "showHide.TemplateInline.Attr" Attribute Group

Table 4.3.374 XSD Description for the "showHide.TestFeedback.Attr" Attribute Group

Table 4.3.375 XSD Description for the "showSolution.ItemSessionControl.Attr" Attribute Group

Table 4.3.376 XSD Description for the "shuffle.AssociateInteraction.Attr" Attribute Group

Table 4.3.377 XSD Description for the "shuffle.ChoiceInteraction.Attr" Attribute Group

Table 4.3.378 XSD Description for the "shuffle.GapMatchInteraction.Attr" Attribute Group

Table 4.3.379 XSD Description for the "shuffle.InlineChoiceInteraction.Attr" Attribute Group

Table 4.3.380 XSD Description for the "shuffle.MatchInteraction.Attr" Attribute Group

Table 4.3.381 XSD Description for the "shuffle.OrderInteraction.Attr" Attribute Group

Table 4.3.382 XSD Description for the "shuffle.Ordering.Attr" Attribute Group

Table 4.3.383 XSD Description for the "sourceIdentifier.VariableMapping.Attr" Attribute Group

Table 4.3.384 XSD Description for the "sourceValue.InterpolationTableEntry.Attr" Attribute Group

Table 4.3.385 XSD Description for the "sourceValue.MatchTableEntry.Attr" Attribute Group

Table 4.3.386 XSD Description for the "span.Col.Attr" Attribute Group

Table 4.3.387 XSD Description for the "span.ColGroup.Attr" Attribute Group

Table 4.3.388 XSD Description for the "src.Img.Attr" Attribute Group

Table 4.3.389 XSD Description for the "step.RandomInteger.Attr" Attribute Group

Table 4.3.390 XSD Description for the "step.SliderInteraction.Attr" Attribute Group

Table 4.3.391 XSD Description for the "stepLabel.SliderInteraction.Attr" Attribute Group

Table 4.3.392 XSD Description for the "stringIdentifier.ExtendedTextInteraction.Attr" Attribute Group

Table 4.3.393 XSD Description for the "stringIdentifier.TextEntryInteraction.Attr" Attribute Group

Table 4.3.394 XSD Description for the "submissionMode.TestPart.Attr" Attribute Group

Table 4.3.395 XSD Description for the "substring.StringMatch.Attr" Attribute Group

Table 4.3.396 XSD Description for the "summary.Table.Attr" Attribute Group

Table 4.3.397 XSD Description for the "target.BranchRule.Attr" Attribute Group

Table 4.3.398 XSD Description for the "targetIdentifier.VariableMapping.Attr" Attribute Group

Table 4.3.399 XSD Description for the "targetValue.InterpolationTableEntry.Attr" Attribute Group

Table 4.3.400 XSD Description for the "targetValue.MatchTableEntry.Attr" Attribute Group

Table 4.3.401 XSD Description for the "template.ResponseProcessing.Attr" Attribute Group

Table 4.3.402 XSD Description for the "templateIdentifier.AssociableHotspot.Attr" Attribute Group

Table 4.3.403 XSD Description for the "templateIdentifier.Gap.Attr" Attribute Group

Table 4.3.404 XSD Description for the "templateIdentifier.GapImg.Attr" Attribute Group

Table 4.3.405 XSD Description for the "templateIdentifier.GapText.Attr" Attribute Group

Table 4.3.406 XSD Description for the "templateIdentifier.HotText.Attr" Attribute Group

Table 4.3.407 XSD Description for the "templateIdentifier.HotspotChoice.Attr" Attribute Group

Table 4.3.408 XSD Description for the "templateIdentifier.InlineChoice.Attr" Attribute Group

Table 4.3.409 XSD Description for the "templateIdentifier.RubricBlockTemplateBlock.Attr" Attribute Group

Table 4.3.410 XSD Description for the "templateIdentifier.RubricBlockTemplateInline.Attr" Attribute Group

Table 4.3.411 XSD Description for the "templateIdentifier.SimpleAssociableChoice.Attr" Attribute Group

Table 4.3.412 XSD Description for the "templateIdentifier.SimpleChoice.Attr" Attribute Group

Table 4.3.413 XSD Description for the "templateIdentifier.TemplateBlock.Attr" Attribute Group

Table 4.3.414 XSD Description for the "templateIdentifier.TemplateDefault.Attr" Attribute Group

Table 4.3.415 XSD Description for the "templateIdentifier.TemplateInline.Attr" Attribute Group

Table 4.3.416 XSD Description for the "templateLocation.ResponseProcessing.Attr" Attribute Group

Table 4.3.417 XSD Description for the "timeDependent.AssessmentItem.Attr" Attribute Group

Table 4.3.418 XSD Description for the "title.AssessmentItem.Attr" Attribute Group

Table 4.3.419 XSD Description for the "title.AssessmentSection.Attr" Attribute Group

Table 4.3.420 XSD Description for the "title.AssessmentStimulus.Attr" Attribute Group

Table 4.3.421 XSD Description for the "title.AssessmentTest.Attr" Attribute Group

Table 4.3.422 XSD Description for the "title.BDO.Attr" Attribute Group

Table 4.3.423 XSD Description for the "title.EndAttemptInteraction.Attr" Attribute Group

Table 4.3.424 XSD Description for the "title.InfoControl.Attr" Attribute Group

Table 4.3.425 XSD Description for the "title.ModalFeedback.Attr" Attribute Group

Table 4.3.426 XSD Description for the "title.StyleSheet.Attr" Attribute Group

Table 4.3.427 XSD Description for the "title.TestFeedback.Attr" Attribute Group

Table 4.3.428 XSD Description for the "tolerance.Equal.Attr" Attribute Group

Table 4.3.429 XSD Description for the "toleranceMode.Equal.Attr" Attribute Group

Table 4.3.430 XSD Description for the "toolName.AssessmentItem.Attr" Attribute Group

Table 4.3.431 XSD Description for the "toolName.AssessmentStimulus.Attr" Attribute Group

Table 4.3.432 XSD Description for the "toolName.AssessmentTest.Attr" Attribute Group

Table 4.3.433 XSD Description for the "toolVersion.AssessmentItem.Attr" Attribute Group

Table 4.3.434 XSD Description for the "toolVersion.AssessmentStimulus.Attr" Attribute Group

Table 4.3.435 XSD Description for the "toolVersion.AssessmentTest.Attr" Attribute Group

Table 4.3.436 XSD Description for the "top.GapImg.Attr" Attribute Group

Table 4.3.437 XSD Description for the "type.A.Attr" Attribute Group

Table 4.3.438 XSD Description for the "type.Object.Attr" Attribute Group

Table 4.3.439 XSD Description for the "type.Param.Attr" Attribute Group

Table 4.3.440 XSD Description for the "type.StyleSheet.Attr" Attribute Group

Table 4.3.441 XSD Description for the "type.UploadInteraction.Attr" Attribute Group

Table 4.3.442 XSD Description for the "upperBound.AreaMapping.Attr" Attribute Group

Table 4.3.443 XSD Description for the "upperBound.Mapping.Attr" Attribute Group

Table 4.3.444 XSD Description for the "upperBound.SliderInteraction.Attr" Attribute Group

Table 4.3.445 XSD Description for the "use.RubricBlock.Attr" Attribute Group

Table 4.3.446 XSD Description for the "validateResponses.ItemSessionControl.Attr" Attribute Group

Table 4.3.447 XSD Description for the "valign.TDH.Attr" Attribute Group

Table 4.3.448 XSD Description for the "value.Param.Attr" Attribute Group

Table 4.3.449 XSD Description for the "value.Weight.Attr" Attribute Group

Table 4.3.450 XSD Description for the "valuetype.Param.Attr" Attribute Group

Table 4.3.451 XSD Description for the "variableIdentifier.TestVariables.Attr" Attribute Group

Table 4.3.452 XSD Description for the "variableIdentifierRef.OutcomeDeclaration.Attr" Attribute Group

Table 4.3.453 XSD Description for the "view.OutcomeDeclaration.Attr" Attribute Group

Table 4.3.454 XSD Description for the "view.RubricBlock.Attr" Attribute Group

Table 4.3.455 XSD Description for the "visible.AssessmentSection.Attr" Attribute Group

Table 4.3.456 XSD Description for the "weightIdentifier.OutcomeMinMax.Attr" Attribute Group

Table 4.3.457 XSD Description for the "weightIdentifier.TestVariables.Attr" Attribute Group

Table 4.3.458 XSD Description for the "weightIdentifier.Variable.Attr" Attribute Group

Table 4.3.459 XSD Description for the "width.Img.Attr" Attribute Group

Table 4.3.460 XSD Description for the "width.Object.Attr" Attribute Group

Table 4.3.461 XSD Description for the "withReplacement.Selection.Attr" Attribute Group

Table 4.4.1 XSD Description for the "AssessmentItem.Type" Root ComplexType

Table 4.4.2 XSD Description for the "AssessmentSection.Type" Root ComplexType

Table 4.4.3 XSD Description for the "AssessmentStimulus.Type" Root ComplexType

Table 4.4.4 XSD Description for the "AssessmentTest.Type" Root ComplexType

Table 4.4.5 XSD Description for the "OutcomeDeclaration.Type" Root ComplexType

Table 4.4.6 XSD Description for the "ResponseProcessing.Type" Root ComplexType

Table 4.5.1 XSD Description for the "A.Type" Core Complex Type

Table 4.5.2 XSD Description for the "AnyN.Type" Core Complex Type

Table 4.5.3 XSD Description for the "AreaMapping.Type" Core Complex Type

Table 4.5.4 XSD Description for the "AssessmentItemRef.Type" Core Complex Type

Table 4.5.5 XSD Description for the "AssociableHotspot.Type" Core Complex Type

Table 4.5.6 XSD Description for the "AssociateInteraction.Type" Core Complex Type

Table 4.5.7 XSD Description for the "BDO.Type" Core Complex Type

Table 4.5.8 XSD Description for the "BR.Type" Core Complex Type

Table 4.5.9 XSD Description for the "BasePromptInteraction.Type" Core Complex Type

Table 4.5.10 XSD Description for the "BaseSequence.Type" Core Complex Type

Table 4.5.11 XSD Description for the "BaseSequenceFull.Type" Core Complex Type

Table 4.5.12 XSD Description for the "BaseSequenceRIdent.Type" Core Complex Type

Table 4.5.13 XSD Description for the "BaseSequenceXBase.Type" Core Complex Type

Table 4.5.14 XSD Description for the "BlockQuote.Type" Core Complex Type

Table 4.5.15 XSD Description for the "BranchRule.Type" Core Complex Type

Table 4.5.16 XSD Description for the "Caption.Type" Core Complex Type

Table 4.5.17 XSD Description for the "ChoiceInteraction.Type" Core Complex Type

Table 4.5.18 XSD Description for the "Col.Type" Core Complex Type

Table 4.5.19 XSD Description for the "ColGroup.Type" Core Complex Type

Table 4.5.20 XSD Description for the "CorrectResponse.Type" Core Complex Type

Table 4.5.21 XSD Description for the "CustomInteraction.Type" Core Complex Type

Table 4.5.22 XSD Description for the "CustomOperator.Type" Core Complex Type

Table 4.5.23 XSD Description for the "DD.Type" Core Complex Type

Table 4.5.24 XSD Description for the "DL.Type" Core Complex Type

Table 4.5.25 XSD Description for the "DT.Type" Core Complex Type

Table 4.5.26 XSD Description for the "DefaultValue.Type" Core Complex Type

Table 4.5.27 XSD Description for the "Div.Type" Core Complex Type

Table "ssmlGroup" Local Element Description

Table 4.5.28 XSD Description for the "DrawingInteraction.Type" Core Complex Type

Table 4.5.29 XSD Description for the "EndAttemptInteraction.Type" Core Complex Type

Table 4.5.30 XSD Description for the "Equal.Type" Core Complex Type

Table 4.5.31 XSD Description for the "EqualRounded.Type" Core Complex Type

Table 4.5.32 XSD Description for the "ExtendedTextInteraction.Type" Core Complex Type

Table 4.5.33 XSD Description for the "FeedbackBlock.Type" Core Complex Type

Table 4.5.34 XSD Description for the "FeedbackInline.Type" Core Complex Type

Table 4.5.35 XSD Description for the "FieldValue.Type" Core Complex Type

Table 4.5.36 XSD Description for the "Gap.Type" Core Complex Type

Table 4.5.37 XSD Description for the "GapImg.Type" Core Complex Type

Table 4.5.38 XSD Description for the "GapMatchInteraction.Type" Core Complex Type

Table 4.5.39 XSD Description for the "GapText.Type" Core Complex Type

Table 4.5.40 XSD Description for the "GraphicAssociateInteraction.Type" Core Complex Type

Table 4.5.41 XSD Description for the "GraphicGapMatchInteraction.Type" Core Complex Type

Table 4.5.42 XSD Description for the "GraphicOrderInteraction.Type" Core Complex Type

Table 4.5.43 XSD Description for the "HR.Type" Core Complex Type

Table 4.5.44 XSD Description for the "HTMLText.Type" Core Complex Type

Table 4.5.45 XSD Description for the "HotText.Type" Core Complex Type

Table 4.5.46 XSD Description for the "HotTextInteraction.Type" Core Complex Type

Table 4.5.47 XSD Description for the "HotspotChoice.Type" Core Complex Type

Table 4.5.48 XSD Description for the "HotspotInteraction.Type" Core Complex Type

Table 4.5.49 XSD Description for the "Img.Type" Core Complex Type

Table 4.5.50 XSD Description for the "Index.Type" Core Complex Type

Table 4.5.51 XSD Description for the "InfoControl.Type" Core Complex Type

Table 4.5.52 XSD Description for the "InlineChoice.Type" Core Complex Type

Table 4.5.53 XSD Description for the "InlineChoiceInteraction.Type" Core Complex Type

Table 4.5.54 XSD Description for the "Inside.Type" Core Complex Type

Table 4.5.55 XSD Description for the "InterpolationTable.Type" Core Complex Type

Table 4.5.56 XSD Description for the "ItemBody.Type" Core Complex Type

Table 4.5.57 XSD Description for the "LI.Type" Core Complex Type

Table 4.5.58 XSD Description for the "Label.Type" Core Complex Type

Table 4.5.59 XSD Description for the "Logic0toMany.Type" Core Complex Type

Table 4.5.60 XSD Description for the "Logic1toMany.Type" Core Complex Type

Table 4.5.61 XSD Description for the "LogicPair.Type" Core Complex Type

Table 4.5.62 XSD Description for the "LogicSingle.Type" Core Complex Type

Table 4.5.63 XSD Description for the "LookupOutcomeValue.Type" Core Complex Type

Table 4.5.64 XSD Description for the "Mapping.Type" Core Complex Type

Table 4.5.65 XSD Description for the "MatchInteraction.Type" Core Complex Type

Table 4.5.66 XSD Description for the "MatchTable.Type" Core Complex Type

Table 4.5.67 XSD Description for the "MathOperator.Type" Core Complex Type

Table 4.5.68 XSD Description for the "MediaInteraction.Type" Core Complex Type

Table 4.5.69 XSD Description for the "ModalFeedback.Type" Core Complex Type

Table 4.5.70 XSD Description for the "NumericLogic1toMany.Type" Core Complex Type

Table 4.5.71 XSD Description for the "OUL.Type" Core Complex Type

Table 4.5.72 XSD Description for the "Object.Type" Core Complex Type

Table 4.5.73 XSD Description for the "OrderInteraction.Type" Core Complex Type

Table 4.5.74 XSD Description for the "Ordering.Type" Core Complex Type

Table 4.5.75 XSD Description for the "OutcomeCondition.Type" Core Complex Type

Table 4.5.76 XSD Description for the "OutcomeElse.Type" Core Complex Type

Table 4.5.77 XSD Description for the "OutcomeIf.Type" Core Complex Type

Table 4.5.78 XSD Description for the "OutcomeProcessing.Type" Core Complex Type

Table 4.5.79 XSD Description for the "OutcomeProcessingFragment.Type" Core Complex Type

Table 4.5.80 XSD Description for the "PatternMatch.Type" Core Complex Type

Table 4.5.81 XSD Description for the "PositionObjectInteraction.Type" Core Complex Type

Table 4.5.82 XSD Description for the "PositionObjectStage.Type" Core Complex Type

Table 4.5.83 XSD Description for the "Prompt.Type" Core Complex Type

Table 4.5.84 XSD Description for the "Q.Type" Core Complex Type

Table 4.5.85 XSD Description for the "Repeat.Type" Core Complex Type

Table 4.5.86 XSD Description for the "ResponseCondition.Type" Core Complex Type

Table 4.5.87 XSD Description for the "ResponseDeclaration.Type" Core Complex Type

Table 4.5.88 XSD Description for the "ResponseElse.Type" Core Complex Type

Table 4.5.89 XSD Description for the "ResponseIf.Type" Core Complex Type

Table 4.5.90 XSD Description for the "ResponseProcessingFragment.Type" Core Complex Type

Table 4.5.91 XSD Description for the "RoundTo.Type" Core Complex Type

Table 4.5.92 XSD Description for the "RubricBlock.Type" Core Complex Type

Table "templateBlock" Local Element Description

Table "templateInline" Local Element Description

Table 4.5.93 XSD Description for the "RubricBlockTemplateBlock.Type" Core Complex Type

Table "templateBlock" Local Element Description

Table 4.5.94 XSD Description for the "RubricBlockTemplateInline.Type" Core Complex Type

Table 4.5.95 XSD Description for the "SelectPointInteraction.Type" Core Complex Type

Table 4.5.96 XSD Description for the "Selection.Type" Core Complex Type

Table 4.5.97 XSD Description for the "SetValue.Type" Core Complex Type

Table 4.5.98 XSD Description for the "SimpleAssociableChoice.Type" Core Complex Type

Table 4.5.99 XSD Description for the "SimpleChoice.Type" Core Complex Type

Table 4.5.100 XSD Description for the "SimpleMatchSet.Type" Core Complex Type

Table 4.5.101 XSD Description for the "SliderInteraction.Type" Core Complex Type

Table 4.5.102 XSD Description for the "StatsOperator.Type" Core Complex Type

Table 4.5.103 XSD Description for the "StimulusBody.Type" Core Complex Type

Table 4.5.104 XSD Description for the "StringMatch.Type" Core Complex Type

Table 4.5.105 XSD Description for the "Substring.Type" Core Complex Type

Table 4.5.106 XSD Description for the "TDH.Type" Core Complex Type

Table 4.5.107 XSD Description for the "TR.Type" Core Complex Type

Table 4.5.108 XSD Description for the "Table.Type" Core Complex Type

Table 4.5.109 XSD Description for the "TablePart.Type" Core Complex Type

Table 4.5.110 XSD Description for the "TemplateBlock.Type" Core Complex Type

Table "feedbackBlock" Local Element Description

Table 4.5.111 XSD Description for the "TemplateBlockFeedbackBlock.Type" Core Complex Type

Table "feedbackBlock" Local Element Description

Table 4.5.112 XSD Description for the "TemplateCondition.Type" Core Complex Type

Table 4.5.113 XSD Description for the "TemplateConstraint.Type" Core Complex Type

Table 4.5.114 XSD Description for the "TemplateDeclaration.Type" Core Complex Type

Table 4.5.115 XSD Description for the "TemplateDefault.Type" Core Complex Type

Table 4.5.116 XSD Description for the "TemplateElse.Type" Core Complex Type

Table 4.5.117 XSD Description for the "TemplateIf.Type" Core Complex Type

Table 4.5.118 XSD Description for the "TemplateInline.Type" Core Complex Type

Table 4.5.119 XSD Description for the "TemplateProcessing.Type" Core Complex Type

Table 4.5.120 XSD Description for the "TestFeedback.Type" Core Complex Type

Table 4.5.121 XSD Description for the "TestPart.Type" Core Complex Type

Table 4.5.122 XSD Description for the "TextEntryInteraction.Type" Core Complex Type

Table 4.5.123 XSD Description for the "UploadInteraction.Type" Core Complex Type

Table 4.6.1 XSD Description for the "AreaMapEntry.Type" Derived Complex Type

Table 4.6.2 XSD Description for the "AssessmentSectionRef.Type" Derived Complex Type

Table 4.6.3 XSD Description for the "AssessmentStimulusRef.Type" Derived Complex Type

Table 4.6.4 XSD Description for the "BaseSequenceXBaseEmpty.Type" Derived Complex Type

Table 4.6.5 XSD Description for the "BaseValue.Type" Derived Complex Type

Table 4.6.6 XSD Description for the "Correct.Type" Derived Complex Type

Table 4.6.7 XSD Description for the "Default.Type" Derived Complex Type

Table 4.6.8 XSD Description for the "InterpolationTableEntry.Type" Derived Complex Type

Table 4.6.9 XSD Description for the "ItemSessionControl.Type" Derived Complex Type

Table 4.6.10 XSD Description for the "MapEntry.Type" Derived Complex Type

Table 4.6.11 XSD Description for the "MapResponse.Type" Derived Complex Type

Table 4.6.12 XSD Description for the "MatchTableEntry.Type" Derived Complex Type

Table 4.6.13 XSD Description for the "MathConstant.Type" Derived Complex Type

Table 4.6.14 XSD Description for the "Number.Type" Derived Complex Type

Table 4.6.15 XSD Description for the "OutcomeMinMax.Type" Derived Complex Type

Table 4.6.16 XSD Description for the "Param.Type" Derived Complex Type

Table 4.6.17 XSD Description for the "PrintedVariable.Type" Derived Complex Type

Table 4.6.18 XSD Description for the "RandomFloat.Type" Derived Complex Type

Table 4.6.19 XSD Description for the "RandomInteger.Type" Derived Complex Type

Table 4.6.20 XSD Description for the "StyleSheet.Type" Derived Complex Type

Table 4.6.21 XSD Description for the "TestVariables.Type" Derived Complex Type

Table 4.6.22 XSD Description for the "TimeLimits.Type" Derived Complex Type

Table 4.6.23 XSD Description for the "Value.Type" Derived Complex Type

Table 4.6.24 XSD Description for the "Variable.Type" Derived Complex Type

Table 4.6.25 XSD Description for the "VariableMapping.Type" Derived Complex Type

Table 4.6.26 XSD Description for the "Weight.Type" Derived Complex Type

Table 4.7.1 XSD Description for the "ARIALevelInteger.Type" Simple Type

Table 4.7.2 XSD Description for the "Coords.Type" Simple Type

Table 4.7.3 XSD Description for the "EncVariableString.Type" Simple Type

Table 4.7.4 XSD Description for the "Identifier.Type" Simple Type

Table 4.7.5 XSD Description for the "IdentifierList.Type" Simple Type

Table 4.7.6 XSD Description for the "IntegerList.Type" Simple Type

Table 4.7.7 XSD Description for the "Length.Type" Simple Type

Table 4.7.8 XSD Description for the "MimeType.Type" Simple Type

Table 4.7.9 XSD Description for the "NonNegativeDouble.Type" Simple Type

Table 4.7.10 XSD Description for the "StringList.Type" Simple Type

Table 4.7.11 XSD Description for the "ToleranceList.Type" Simple Type

Table 4.7.12 XSD Description for the "UniqueIdentifier.Type" Simple Type

Table 4.7.13 XSD Description for the "UniqueIdentifierRef.Type" Simple Type

Table 4.7.14 XSD Description for the "VariableString.Type" Simple Type

Table 4.7.15 XSD Description for the "View.Type" Simple Type

Table A1.1 The key to the descriptions of UML to XSD attribute mapping tables

Table A1.2 The key to the descriptions of UML to XSD class mapping tables

Table A1.3 The key to the descriptions of UML to XSD enumerated and enumerated list class mapping tables

Table A1.4 The key to the descriptions of UML to XSD list class mapping table

Table A1.5 The key to the descriptions of UML to XSD primitive mapping table

Table A1.6 The key to the descriptions of XSD element tables

Table A1.7 The key to the descriptions of XSD complex type tables

Table A1.8 The key to the descriptions of XSD simple type tables

Table A1.9 The key to the descriptions of XSD attribute group tables

Table A1.10 The key to the descriptions of XSD attribute tables

Table A1.11 The key to the descriptions of VDEX vocabulary binding tables

toc | top

# 1. Introduction

## 1.1 Overview of the Binding

This document is the core part the IMS Global Question and Test Interoperability (QTI) v2.2 specification. This document describes the binding of QTI Assssment, Section and Items (ASI), as described in [QTI, 17], in the Extensible Markup Language (XML).

The QTI data model is described abstractly, using the Unified Modeling Language (UML) to facilitate binding to a wide range of data-modelling tools and programming languages, however, for interchange between systems a binding is provided to the industry standard XML and use of this binding is strongly recommended. The IMS QTI specification has been designed to support both interoperability and innovation through the provision of well-defined extension points. These extension points can be used to wrap specialized or proprietary data in ways that allows it to be used alongside items that can be represented directly.

## 1.2 Scope and Context

The IMS QTI Assessment, Section and Item XSD Binding is a part of the broader QTI specification. This document should be used in conjuncton with the following documents

- IMS QTI v2.2: ASI Information Model v1.0 [QTI, 17] - the details of the QTI information model described using UML;
- IMS QTI v2.2: HTML5 Information Model and XSD Binding v1.0 [QTI, 16] - the details of the new HTML5 functionality added to QTI;
- IMS QTI v2.2 Best Practice and Implementation Guide v1.0 [QTI, 15] - key information on how to adopt and implement the specification.

This QTI ASI v2.2 specification supersedes the QTI v2.1 versions. The QTI Information Model is bound to an XML Schema Definition (XSD). This document and the accompanying XSD is generated using the IMS Global Binding Auto-generation Tool-kit (I-BAT) [I-BAT, 06]. A significant number of new features have been added in v2.2, namely:

- Shared Stimulus - this allows key reference content to be shared by more than one Item and also for that content workflow to be directly supported by the QTI interoperability;
- Bidirectional Text - enables 'left-to-right' and 'right-to-left' text presentation;
- Speech Synthesis Markup Language (SSML) - this allows text to have direct SSMLv1.1 annotation;
- Support for RUBY - allows one or more spans of phrasing content to be marked with ruby annotations;
- WAI-ARIA on the HTML tags - this allows the HTML to support ARIA accessibility information;
- HTML4 tags - support for the HTML4 tags 'bdo', and 'label' (the latter is placed in the HTML5 namespace to avoid conflict with the other new 'label' element);
- HTML5 tags - support for the HTML5 tags 'article', 'aside', 'audio', 'bdi', 'figure', 'figcaption', 'footer', 'header', 'ruby', 'nav', 'section', 'source', 'track', and 'video' (these features are all supplied in a separate XML namespace, see [QTI, 16] and so not described in this binding document);
- HTML5 extensibility - support for the 'data-*' attributes;
- MathML 3 - providing support for both MathMl 2 and MathMl 3.0;
- CSS 3 - providing support for both CSS2.1 and CSS 3.0.

There have also been several changes to established features, namely:

- GapImg Class - add support for the 'top' and 'left' characteristics;
- GapText Class - considerable extension of the permitted child tags to support formatted text;
- GraphicGapMatchInteraction Class - allow 'gapText' as well as 'gapImg' children;
- TextEntryInteraction Class - add support for the 'format' characteristic;
- MediaInteraction Class - add support for the 'coords' characteristic;
- InlineChoice Class - considerable extension of the permitted child tags;
- InlineChoiceInteraction Class - add support for the, new, 'label' element (not the same as the HTML4 element);
- OutcomeDeclaration Class - add support for the 'externalScored' characteristics;
- Data-typing - many data-types for characteristics have been changed to enforce the intentions of the information model more accurately.

## 1.3 Structure of the Document

The structure of the rest of this document is:

2. UML to XML/XSD Mapping | The mapping between the UML representation of the QTI Information Model and the XML components of the corresponding XSD;
3. Files and Namespaces | The complete set of namespaces and file names that are used to construct the QTI ASI XSD;
4. Description of the XSD | A detailed description of the QTI ASI XSD (the relationships between the original specification model, in UML, and the XSD are described in Section 2);
5. The Schematron Rules | A summary of the Schematron rules rules that are used to impose more of the Information Model constraints on the XSD (these are features that either cannot be imposed in an XSD or which would require an overly complex XSD);
6. Extending the XSD | An explanation of how to use the extension points in the XSD to extend the functionality of the XSD;
7. ASI Packaging | The listing of the QTI ASI XSD that should be used to validate instances of the data exchange;
Appendix A XSD Binding Terms | An overview of the concepts and the terms used by IMS to create theXSD-based bindings representations and the accompanying documentation. The XSD binding is auto-generated from the UML representation to ensure full consistency between the information model and binding;
Appendix B XSD Listing | The listing of the QTI ASI XSD that should be used to validate instances of the data exchange. A link to the schema location is also provided.

## 1.4 Nomenclature

ARIA | Accessible Rich Internet Applications
ASI | Assessment, Section and Item
CP | Content Packaging
DT | Derived Type
HTML | Hypertext Markup Language
PCI | Portable Custom Interaction
PT | Primitive Type
QTI | Question and Test Interoperability
SSML | Synthesis Markup Language
UML | Unified Modeling Language
VDEX | Vocabulary Definition Exchange
W3C | World Wide Web Consortium
XML | Exchange Markup Language
XOR | Exclusive OR
XSD | XML Schema Definition
XSLT | XML Structured Language Transform

## 1.5 References

[CP, 12] | IMS Content Packaging Information Model Version 1.2 Public Draft v2.0, Colin Smythe (IMS Global) and Boyd Nielsen (Independent), IMS Global Learning Consortium, March 2007, http://www.imsglobal.org/content/packaging/cpv1p2pd2/imscp_infov1p2pd2.html.
[CSM, 12] | IMS Global Common Cartridge Profile: Implementation Version 1.3, Lisa Mattson (IMS Global), IMS Global Learning Consortium, May 2014, http://www.imsglobal.org/cc/ccv1p3/imscc_Implementation-v1p3.html.
[I-BAT, 06] | IMS Binding Auto-generation Toolkit (I-BAT), Colin Smythe, IMS Global Learning Consortium, July 2006.
[IMD, 06] | IMS Metadata Best Practice Guide for IEEE 1484.12.1-2002 Standard for Learning Object Metadata, Lorna M.Campbell, Anthony Roberts and Colin Smythe, IMS Global Learning Consortium, April 2006, http://www.imsglobal.org/metadata/mdv1p3/imsmd_bestv1p3.html.
[PCI, 14] | IMS Global Portable Custom Interactions v1.0 (Candidate Final), M.Aumock, M.McKell and P.Spruiell, IMS Global Learning Consortium, April 2013, http://www.imsglobal.org/assessment/pciv1p0cf/imsPCIv1p0cf.html.
[QTI, 15] | IMS Question and Test Interoperability (QTI): Best Practices and Implementation Guide v2.2, Tom Hoffmann and Wilbert Kraan, IMS Global Learning Consortium, September 2015, https://www.imsglobal.org/question/qtiv2p2/imsqti_v2p2_impl.html.
[QTI, 16] | IMS Question and Test Interoperability (QTI): HTML5 Information Model and XSD Binding Version 2.2.1, Colin Smythe, Wilbert Kraan and Mark McKell, IMS Global Learning Consortium, August 2016, https://www.imsglobal.org/question/qtiv2p2/QTIv2p2p1-HTML5-InfoBindModelv1p0/imsqtiv2p2p1_html5_v1p0_InfoBindv1p0.html.
[QTI, 17] | Question and Test Interoperability (QTI): Assessment, Section and Item (ASI) Information Model v2.2.2, Colin Smythe (IMS Global), Mark McKell (IMS Global) and Wilbert Kraan (JISC), IMS Global Learning Consortium, November 2017, https://www.imsglobal.org/question/qtiv2p2/QTIv2p2p2-ASI-InformationModelv1p0/imsqtiv2p2p2_asi_v1p0_InfoModelv1p0.html.
[VDEX, 04] | IMS Vocabulary Definition Exchange Information Model v1.0, Adam Cooper, IMS Global Learning Consortium, February 2004, http://www.imsglobal.org/vdex/vdexv1p0/imsvdex_infov1p0.html.

toc | top

# 2. UML to XML/XSD Mapping

## 2.1 Root Attribute UML/XSD Mapping

The UML/XSD Mapping for the UML Root Attributes to the XSD Root Elements is given in Table 2.1. The syntax and semantics for this representation is described in Appendix A1.1.

Table 2.1 UML/XSD Mapping for the Root Attributes.
Attribute Name | UML Class | XSD Name | XSD Type | XSD Data Type
--- | --- | --- | --- | ---
assessmentItem | AssessmentItem | assessmentItem | Element | AssessmentItem.Type
assessmentSection | AssessmentSection | assessmentSection | Element | AssessmentSection.Type
assessmentStimulus | AssessmentStimulus | assessmentStimulus | Element | AssessmentStimulus.Type
assessmentTest | AssessmentTest | assessmentTest | Element | AssessmentTest.Type
outcomeDeclaration | OutcomeDeclaration | outcomeDeclaration | Element | OutcomeDeclaration.Type
responseProcessing | ResponseProcessing | responseProcessing | Element | ResponseProcessing.Type

## 2.2 Root Class UML/XSD Mapping

The syntax and semantics for the Root Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.2.1 AssessmentItem Root Class Mapping

The UML/XSD Mapping for the "AssessmentItem" Root Class is given in Table 2.2.1.

Table 2.2.1 UML/XSD Mapping for the "AssessmentItem" Root Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
AssessmentItem | Root | Container [ Sequence ] | - N/A - | AssessmentItem.Type | ComplexType
identifier | Characteristic | PT: NormalizedString | [1] | identifier | Attribute (Global)
title | Characteristic | PT: NormalizedString | [1] | title | Attribute (Global)
label | Characteristic | PT: NormalizedString | [0..1] | label | Attribute (Global)
language | Characteristic | PT: Language | [0..1] | xml:lang | Attribute (Global)
toolName | Characteristic | PT: NormalizedString | [0..1] | toolName | Attribute (Global)
toolVersion | Characteristic | PT: NormalizedString | [0..1] | toolVersion | Attribute (Global)
adaptive | Characteristic | PT: Boolean | [0..1] | adaptive | Attribute (Global)
timeDependent | Characteristic | PT: Boolean | [1] | timeDependent | Attribute (Global)
responseDeclaration | Attribute | ResponseDeclaration | [0.. *] | responseDeclaration | Element (Global)
outcomeDeclaration | Attribute | OutcomeDeclaration | [0.. *] | outcomeDeclaration | Element (Global)
templateDeclaration | Attribute | TemplateDeclaration | [0.. *] | templateDeclaration | Element (Global)
templateProcessing | Attribute | TemplateProcessing | [0..1] | templateProcessing | Element (Global)
assessmentStimulusRef | Attribute | DT: AssessmentStimulusRef (PT: Empty) | [0.. *] | assessmentStimulusRef | Element (Global)
stylesheet | Attribute | DT: StyleSheet (PT: Empty) | [0.. *] | stylesheet | Element (Global)
itemBody | Attribute | ItemBody | [0..1] | itemBody | Element (Global)
responseProcessing | Attribute | ResponseProcessing | [0..1] | responseProcessing | Element (Global)
modalFeedback | Attribute | ModalFeedback | [0.. *] | modalFeedback | Element (Global)
apipAccessibility | Attribute | [ Imported (APIPAccessibility) ] | [0..1] | apipAccessibility | Element (Global)

### 2.2.2 AssessmentSection Root Class Mapping

The UML/XSD Mapping for the "AssessmentSection" Root Class is given in Table 2.2.2.

Table 2.2.2 UML/XSD Mapping for the "AssessmentSection" Root Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
AssessmentSection | Root | Container [ Sequence ] | - N/A - | AssessmentSection.Type | ComplexType
identifier | Characteristic | PT: NormalizedString | [1] | identifier | Attribute (Global)
required | Characteristic | PT: Boolean | [0..1] | required | Attribute (Global)
fixed | Characteristic | PT: Boolean | [0..1] | fixed | Attribute (Global)
title | Characteristic | PT: NormalizedString | [1] | title | Attribute (Global)
visible | Characteristic | PT: Boolean | [1] | visible | Attribute (Global)
keepTogether | Characteristic | PT: Boolean | [0..1] | keepTogether | Attribute (Global)
preCondition | Attribute | LogicSingle | [0.. *] | preCondition | Element (Global)
branchRule | Attribute | BranchRule | [0.. *] | branchRule | Element (Global)
itemSessionControl | Attribute | DT: ItemSessionControl (PT: Empty) | [0..1] | itemSessionControl | Element (Global)
timeLimits | Attribute | DT: TimeLimits (PT: Empty) | [0..1] | timeLimits | Element (Global)
selection | Attribute | Selection | [0..1] | selection | Element (Global)
ordering | Attribute | Ordering | [0..1] | ordering | Element (Global)
rubricBlock | Attribute | RubricBlock | [0.. *] | rubricBlock | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
assessmentItemRef | Attribute | AssessmentItemRef | XOR [0.. *] [1] | assessmentItemRef | Element (Global)
assessmentSection | Attribute | AssessmentSection | XOR [0.. *] [1] | assessmentSection | Element (Global)
assessmentSectionRef | Attribute | DT: AssessmentSectionRef (PT: Empty) | XOR [0.. *] [1] | assessmentSectionRef | Element (Global)

### 2.2.3 AssessmentStimulus Root Class Mapping

The UML/XSD Mapping for the "AssessmentStimulus" Root Class is given in Table 2.2.3.

Table 2.2.3 UML/XSD Mapping for the "AssessmentStimulus" Root Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
AssessmentStimulus | Root | Container [ Sequence ] | - N/A - | AssessmentStimulus.Type | ComplexType
identifier | Characteristic | PT: NormalizedString | [1] | identifier | Attribute (Global)
title | Characteristic | PT: NormalizedString | [1] | title | Attribute (Global)
label | Characteristic | PT: NormalizedString | [0..1] | label | Attribute (Global)
language | Characteristic | PT: Language | [0..1] | xml:lang | Attribute (Global)
toolName | Characteristic | PT: NormalizedString | [0..1] | toolName | Attribute (Global)
toolVersion | Characteristic | PT: NormalizedString | [0..1] | toolVersion | Attribute (Global)
stylesheet | Attribute | DT: StyleSheet (PT: Empty) | [0.. *] | stylesheet | Element (Global)
stimulusBody | Attribute | StimulusBody | [1] | stimulusBody | Element (Global)
apipAccessibility | Attribute | [ Imported (APIPAccessibility) ] | [0..1] | apipAccessibility | Element (Global)

### 2.2.4 AssessmentTest Root Class Mapping

The UML/XSD Mapping for the "AssessmentTest" Root Class is given in Table 2.2.4.

Table 2.2.4 UML/XSD Mapping for the "AssessmentTest" Root Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
AssessmentTest | Root | Container [ Sequence ] | - N/A - | AssessmentTest.Type | ComplexType
identifier | Characteristic | PT: NormalizedString | [1] | identifier | Attribute (Global)
title | Characteristic | PT: NormalizedString | [1] | title | Attribute (Global)
toolName | Characteristic | PT: NormalizedString | [0..1] | toolName | Attribute (Global)
toolVersion | Characteristic | PT: NormalizedString | [0..1] | toolVersion | Attribute (Global)
outcomeDeclaration | Attribute | OutcomeDeclaration | [0.. *] | outcomeDeclaration | Element (Global)
timeLimits | Attribute | DT: TimeLimits (PT: Empty) | [0..1] | timeLimits | Element (Global)
stylesheet | Attribute | DT: StyleSheet (PT: Empty) | [0.. *] | stylesheet | Element (Global)
testPart | Attribute | TestPart | [1.. *] | testPart | Element (Global)
outcomeProcessing | Attribute | OutcomeProcessing | [0..1] | outcomeProcessing | Element (Global)
testFeedback | Attribute | TestFeedback | [0.. *] | testFeedback | Element (Global)

### 2.2.5 OutcomeDeclaration Root Class Mapping

The UML/XSD Mapping for the "OutcomeDeclaration" Root Class is given in Table 2.2.5.

Table 2.2.5 UML/XSD Mapping for the "OutcomeDeclaration" Root Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
OutcomeDeclaration | Root | Container [ Sequence ] | - N/A - | OutcomeDeclaration.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
cardinality | Characteristic | [ Enumeration (Cardinality) ] | [1] | cardinality | Attribute (Global)
baseType | Characteristic | [ Enumeration (BaseType) ] | [0..1] | baseType | Attribute (Global)
view | Characteristic | [ Enumeration List (View) ] | [0..1] | view | Attribute (Global)
interpretation | Characteristic | PT: String | [0..1] | interpretation | Attribute (Global)
longInterpretation | Characteristic | PT: AnyURI | [0..1] | longInterpretation | Attribute (Global)
normalMaximum | Characteristic | DT: NonNegativeDouble (PT: Double) | [0..1] | normalMaximum | Attribute (Global)
normalMinimum | Characteristic | PT: Double | [0..1] | normalMinimum | Attribute (Global)
masteryValue | Characteristic | PT: Double | [0..1] | masteryValue | Attribute (Global)
externalScored | Characteristic | [ Enumeration (ExternalScored) ] | [0..1] | externalScored | Attribute (Global)
variableIdentifierRef | Characteristic | DT: UniqueIdentifierRef (PT: IDREF) | [0..1] | variableIdentifierRef | Attribute (Global)
defaultValue | Attribute | DefaultValue | [0..1] | defaultValue | Element (Global)
matchTable | Attribute | MatchTable | XOR [0..1] [1] | matchTable | Element (Global)
interpolationTable | Attribute | InterpolationTable | XOR [0..1] [1] | interpolationTable | Element (Global)

### 2.2.6 ResponseProcessing Root Class Mapping

The UML/XSD Mapping for the "ResponseProcessing" Root Class is given in Table 2.2.6.

Table 2.2.6 UML/XSD Mapping for the "ResponseProcessing" Root Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
ResponseProcessing | Root | Container [ Sequence ] | - N/A - | ResponseProcessing.Type | ComplexType
template | Characteristic | PT: AnyURI | [0..1] | template | Attribute (Global)
templateLocation | Characteristic | PT: AnyURI | [0..1] | templateLocation | Attribute (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
responseCondition | Attribute | ResponseCondition | XOR [0.. *] [1] | responseCondition | Element (Global)
responseProcessingFragment | Attribute | ResponseProcessingFragment | XOR [0.. *] [1] | responseProcessingFragment | Element (Global)
setOutcomeValue | Attribute | SetValue | XOR [0.. *] [1] | setOutcomeValue | Element (Global)
exitResponse | Attribute | PT: Empty | XOR [0.. *] [1] | exitResponse | Element (Global)
lookupOutcomeValue | Attribute | LookupOutcomeValue | XOR [0.. *] [1] | lookupOutcomeValue | Element (Global)

## 2.3 Class UML/XSD Mapping

The syntax and semantics for the Data Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.3.1 A Class Mapping

The UML/XSD Mapping for the "A" Class is given in Table 2.3.1.

Table 2.3.1 UML/XSD Mapping for the "A" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
A | Core | Container [ Sequence ] | - N/A - | A.Type | ComplexType
href | Characteristic | PT: AnyURI | [1] | href | Attribute (Global)
type | Characteristic | DT: MimeType (PT: NormalizedString) | [0..1] | type | Attribute (Global)
textEntryInteraction | Attribute | TextEntryInteraction | XOR [0.. *] [1] | textEntryInteraction | Element (Global)
hottext | Attribute | HotText | XOR [0.. *] [1] | hottext | Element (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
gap | Attribute | Gap | XOR [0.. *] [1] | gap | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
inlineChoiceInteraction | Attribute | InlineChoiceInteraction | XOR [0.. *] [1] | inlineChoiceInteraction | Element (Global)
endAttemptInteraction | Attribute | EndAttemptInteraction | XOR [0.. *] [1] | endAttemptInteraction | Element (Global)
customInteraction | Attribute | CustomInteraction | XOR [0.. *] [1] | customInteraction | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.2 AnyN Class Mapping

The UML/XSD Mapping for the "AnyN" Class is given in Table 2.3.2.

Table 2.3.2 UML/XSD Mapping for the "AnyN" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
AnyN | Core | Container [ Sequence ] | - N/A - | AnyN.Type | ComplexType
min | Characteristic | [ Union (IntegerOrVariableRef) ] | [1] | min | Attribute (Global)
max | Characteristic | [ Union (IntegerOrVariableRef) ] | [1] | max | Attribute (Global)
and | Attribute | Logic1toMany | XOR [1.. *] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1.. *] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1.. *] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1.. *] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1.. *] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1.. *] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1.. *] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1.. *] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1.. *] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1.. *] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1.. *] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1.. *] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1.. *] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1.. *] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1.. *] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1.. *] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1.. *] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1.. *] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1.. *] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1.. *] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1.. *] [1] | match | Element (Global)
index | Attribute | Index | XOR [1.. *] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1.. *] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1.. *] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1.. *] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1.. *] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1.. *] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1.. *] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1.. *] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1.. *] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1.. *] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1.. *] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1.. *] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1.. *] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1.. *] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1.. *] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1.. *] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1.. *] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1.. *] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1.. *] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1.. *] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1.. *] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1.. *] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1.. *] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1.. *] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1.. *] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1.. *] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1.. *] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1.. *] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1.. *] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1.. *] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1.. *] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1.. *] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1.. *] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1.. *] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1.. *] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1.. *] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1.. *] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1.. *] [1] | mathOperator | Element (Global)

### 2.3.3 AreaMapping Class Mapping

The UML/XSD Mapping for the "AreaMapping" Class is given in Table 2.3.3.

Table 2.3.3 UML/XSD Mapping for the "AreaMapping" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
AreaMapping | Core | Container [ Sequence ] | - N/A - | AreaMapping.Type | ComplexType
lowerBound | Characteristic | PT: Double | [0..1] | lowerBound | Attribute (Global)
upperBound | Characteristic | PT: Double | [0..1] | upperBound | Attribute (Global)
defaultValue | Characteristic | PT: Double | [0..1] | defaultValue | Attribute (Global)
areaMapEntry | Attribute | DT: AreaMapEntry (PT: Empty) | [1.. *] | areaMapEntry | Element (Global)

### 2.3.4 AssessmentItemRef Class Mapping

The UML/XSD Mapping for the "AssessmentItemRef" Class is given in Table 2.3.4.

Table 2.3.4 UML/XSD Mapping for the "AssessmentItemRef" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
AssessmentItemRef | Core | Container [ Sequence ] | - N/A - | AssessmentItemRef.Type | ComplexType
identifier | Characteristic | PT: NormalizedString | [1] | identifier | Attribute (Global)
required | Characteristic | PT: Boolean | [0..1] | required | Attribute (Global)
fixed | Characteristic | PT: Boolean | [0..1] | fixed | Attribute (Global)
href | Characteristic | PT: AnyURI | [1] | href | Attribute (Global)
category | Characteristic | [ List (IdentifierList) ] | [0..1] | category | Attribute (Global)
preCondition | Attribute | LogicSingle | [0.. *] | preCondition | Element (Global)
branchRule | Attribute | BranchRule | [0.. *] | branchRule | Element (Global)
itemSessionControl | Attribute | DT: ItemSessionControl (PT: Empty) | [0..1] | itemSessionControl | Element (Global)
timeLimits | Attribute | DT: TimeLimits (PT: Empty) | [0..1] | timeLimits | Element (Global)
variableMapping | Attribute | DT: VariableMapping (PT: Empty) | [0.. *] | variableMapping | Element (Global)
weight | Attribute | DT: Weight (PT: Empty) | [0.. *] | weight | Element (Global)
templateDefault | Attribute | TemplateDefault | [0.. *] | templateDefault | Element (Global)

### 2.3.5 AssociableHotspot Class Mapping

The UML/XSD Mapping for the "AssociableHotspot" Class is given in Table 2.3.5.

Table 2.3.5 UML/XSD Mapping for the "AssociableHotspot" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
AssociableHotspot | Core | Container [ Sequence ] | - N/A - | AssociableHotspot.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
templateIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | templateIdentifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [0..1] | showHide | Attribute (Global)
matchGroup | Characteristic | [ List (IdentifierList) ] | [0..1] | matchGroup | Attribute (Global)
shape | Characteristic | [ Enumeration (Shape) ] | [1] | shape | Attribute (Global)
coords | Characteristic | DT: Coords (PT: NormalizedString) | [1] | coords | Attribute (Global)
hotspotLabel | Characteristic | PT: String | [0..1] | hotspotLabel | Attribute (Global)
matchMax | Characteristic | PT: NonNegativeInteger | [1] | matchMax | Attribute (Global)
matchMin | Characteristic | PT: NonNegativeInteger | [0..1] | matchMin | Attribute (Global)

### 2.3.6 AssociateInteraction Class Mapping

The UML/XSD Mapping for the "AssociateInteraction" Class is given in Table 2.3.6.

Table 2.3.6 UML/XSD Mapping for the "AssociateInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
AssociateInteraction | Core | Container [ Sequence ] | - N/A - | AssociateInteraction.Type | ComplexType
shuffle | Characteristic | PT: Boolean | [0..1] | shuffle | Attribute (Global)
maxAssociations | Characteristic | PT: NonNegativeInteger | [0..1] | maxAssociations | Attribute (Global)
minAssociations | Characteristic | PT: NonNegativeInteger | [0..1] | minAssociations | Attribute (Global)
simpleAssociableChoice | Attribute | SimpleAssociableChoice | [1.. *] | simpleAssociableChoice | Element (Global)

### 2.3.7 BDO Class Mapping

The UML/XSD Mapping for the "BDO" Class is given in Table 2.3.7.

Table 2.3.7 UML/XSD Mapping for the "BDO" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
BDO | Core | Container [ Sequence ] | - N/A - | BDO.Type | ComplexType
title | Characteristic | PT: String | [0..1] | title | Attribute (Global)
img | Attribute | Img | XOR [0.. *] [1] | img | Element (Global)
br | Attribute | BR | XOR [0.. *] [1] | br | Element (Global)
object | Attribute | Object | XOR [0.. *] [1] | object | Element (Global)
em | Attribute | HTMLText | XOR [0.. *] [1] | em | Element (Global)
a | Attribute | A | XOR [0.. *] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [0.. *] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [0.. *] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [0.. *] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [0.. *] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [0.. *] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [0.. *] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [0.. *] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [0.. *] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [0.. *] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [0.. *] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [0.. *] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [0.. *] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [0.. *] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [0.. *] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [0.. *] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [0.. *] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [0.. *] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [0.. *] [1] | cite | Element (Global)
bdo | Attribute | BDO | XOR [0.. *] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [0.. *] [1] | qh5:bdi | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [0.. *] [1] | qh5:label | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [0.. *] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.8 BR Class Mapping

The UML/XSD Mapping for the "BR" Class is given in Table 2.3.8.

Table 2.3.8 UML/XSD Mapping for the "BR" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
BR | Core | Container [ Sequence ] | - N/A - | BR.Type | ComplexType

### 2.3.9 BasePromptInteraction Class Mapping

The UML/XSD Mapping for the "BasePromptInteraction" Class is given in Table 2.3.9.

Table 2.3.9 UML/XSD Mapping for the "BasePromptInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
BasePromptInteraction | Core | Container [ Sequence ] | - N/A - | BasePromptInteraction.Type | ComplexType
id | Characteristic | DT: UniqueIdentifier (PT: ID) | [0..1] | id | Attribute (Global)
class | Characteristic | [ List (StringList) ] | [0..1] | class | Attribute (Global)
language | Characteristic | PT: Language | [0..1] | xml:lang | Attribute (Global)
label | Characteristic | PT: NormalizedString | [0..1] | label | Attribute (Global)
base | Characteristic | PT: Base | [0..1] | xml:base | Attribute (Global)
responseIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | responseIdentifier | Attribute (Global)
dir | Characteristic | [ Enumeration (DIR) ] | [0..1] | dir | Attribute (Global)
role | Characteristic | [ Enumeration (ARIARoleValue) ] | [0..1] | role | Attribute (Global)
aria-controls | Characteristic | PT: IDREFS | [0..1] | aria-controls | Attribute (Global)
aria-describedby | Characteristic | PT: IDREFS | [0..1] | aria-describedby | Attribute (Global)
aria-flowsto | Characteristic | PT: IDREFS | [0..1] | aria-flowsto | Attribute (Global)
aria-label | Characteristic | PT: NormalizedString | [0..1] | aria-label | Attribute (Global)
aria-labelledby | Characteristic | PT: IDREFS | [0..1] | aria-labelledby | Attribute (Global)
aria-level | Characteristic | DT: ARIALevelInteger (PT: Integer) | [0..1] | aria-level | Attribute (Global)
aria-live | Characteristic | [ Enumeration (ARIALiveValue) ] | [0..1] | aria-live | Attribute (Global)
aria-orientation | Characteristic | [ Enumeration (ARIAOrientationValue) ] | [0..1] | aria-orientation | Attribute (Global)
aria-owns | Characteristic | PT: IDREFS | [0..1] | aria-owns | Attribute (Global)
dataExtension | Characteristic | DT: DataHTML5Extension (PT: AnyTypeLax) | [0..*] | dataExtension | Attribute (Global)
prompt | Attribute | Prompt | [0..1] | prompt | Element (Global)

### 2.3.10 BaseSequence Class Mapping

The UML/XSD Mapping for the "BaseSequence" Class is given in Table 2.3.10.

Table 2.3.10 UML/XSD Mapping for the "BaseSequence" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
BaseSequence | Core | Container [ Sequence ] | - N/A - | BaseSequence.Type | ComplexType
id | Characteristic | DT: UniqueIdentifier (PT: ID) | [0..1] | id | Attribute (Global)
class | Characteristic | [ List (StringList) ] | [0..1] | class | Attribute (Global)
language | Characteristic | PT: Language | [0..1] | xml:lang | Attribute (Global)
label | Characteristic | PT: NormalizedString | [0..1] | label | Attribute (Global)
dir | Characteristic | [ Enumeration (DIR) ] | [0..1] | dir | Attribute (Global)
role | Characteristic | [ Enumeration (ARIARoleValue) ] | [0..1] | role | Attribute (Global)
aria-controls | Characteristic | PT: IDREFS | [0..1] | aria-controls | Attribute (Global)
aria-describedby | Characteristic | PT: IDREFS | [0..1] | aria-describedby | Attribute (Global)
aria-flowto | Characteristic | PT: IDREFS | [0..1] | aria-flowto | Attribute (Global)
aria-label | Characteristic | PT: NormalizedString | [0..1] | aria-label | Attribute (Global)
aria-labelledby | Characteristic | PT: IDREFS | [0..1] | aria-labelledby | Attribute (Global)
aria-level | Characteristic | DT: ARIALevelInteger (PT: Integer) | [0..1] | aria-level | Attribute (Global)
aria-live | Characteristic | [ Enumeration (ARIALiveValue) ] | [0..1] | aria-live | Attribute (Global)
aria-orientation | Characteristic | [ Enumeration (ARIAOrientationValue) ] | [0..1] | aria-orientation | Attribute (Global)
aria-owns | Characteristic | PT: IDREFS | [0..1] | aria-owns | Attribute (Global)
dataExtension | Characteristic | DT: DataHTML5Extension (PT: AnyTypeLax) | [0..*] | dataExtension | Attribute (Global)

### 2.3.11 BaseSequenceFull Class Mapping

The UML/XSD Mapping for the "BaseSequenceFull" Class is given in Table 2.3.11.

Table 2.3.11 UML/XSD Mapping for the "BaseSequenceFull" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
BaseSequenceFull | Core | Container [ Sequence ] | - N/A - | BaseSequenceFull.Type | ComplexType
id | Characteristic | DT: UniqueIdentifier (PT: ID) | [0..1] | id | Attribute (Global)
class | Characteristic | [ List (StringList) ] | [0..1] | class | Attribute (Global)
language | Characteristic | PT: Language | [0..1] | xml:lang | Attribute (Global)
label | Characteristic | PT: NormalizedString | [0..1] | label | Attribute (Global)
responseIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | responseIdentifier | Attribute (Global)
base | Characteristic | PT: Base | [0..1] | xml:base | Attribute (Global)
dir | Characteristic | [ Enumeration (DIR) ] | [0..1] | dir | Attribute (Global)
role | Characteristic | [ Enumeration (ARIARoleValue) ] | [0..1] | role | Attribute (Global)
aria-controls | Characteristic | PT: IDREFS | [0..1] | aria-controls | Attribute (Global)
aria-describedby | Characteristic | PT: IDREFS | [0..1] | aria-describedby | Attribute (Global)
aria-flowto | Characteristic | PT: IDREFS | [0..1] | aria-flowto | Attribute (Global)
aria-label | Characteristic | PT: NormalizedString | [0..1] | aria-label | Attribute (Global)
aria-labelledby | Characteristic | PT: IDREFS | [0..1] | aria-labelledby | Attribute (Global)
aria-level | Characteristic | DT: ARIALevelInteger (PT: Integer) | [0..1] | aria-level | Attribute (Global)
aria-live | Characteristic | [ Enumeration (ARIALiveValue) ] | [0..1] | aria-live | Attribute (Global)
aria-orientation | Characteristic | [ Enumeration (ARIAOrientationValue) ] | [0..1] | aria-orientation | Attribute (Global)
aria-owns | Characteristic | PT: IDREFS | [0..1] | aria-owns | Attribute (Global)
dataExtension | Characteristic | DT: DataHTML5Extension (PT: AnyTypeLax) | [0..*] | dataExtension | Attribute (Global)

### 2.3.12 BaseSequenceRIdent Class Mapping

The UML/XSD Mapping for the "BaseSequenceRIdent" Class is given in Table 2.3.12.

Table 2.3.12 UML/XSD Mapping for the "BaseSequenceRIdent" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
BaseSequenceRIdent | Core | Container [ Sequence ] | - N/A - | BaseSequenceRIdent.Type | ComplexType
id | Characteristic | DT: UniqueIdentifier (PT: ID) | [0..1] | id | Attribute (Global)
class | Characteristic | [ List (StringList) ] | [0..1] | class | Attribute (Global)
language | Characteristic | PT: Language | [0..1] | xml:lang | Attribute (Global)
label | Characteristic | PT: NormalizedString | [0..1] | label | Attribute (Global)
responseIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | responseIdentifier | Attribute (Global)
dir | Characteristic | [ Enumeration (DIR) ] | [0..1] | dir | Attribute (Global)
role | Characteristic | [ Enumeration (ARIARoleValue) ] | [0..1] | role | Attribute (Global)
aria-controls | Characteristic | PT: IDREFS | [0..1] | aria-controls | Attribute (Global)
aria-describedby | Characteristic | PT: IDREFS | [0..1] | aria-describedby | Attribute (Global)
aria-flowto | Characteristic | PT: IDREFS | [0..1] | aria-flowto | Attribute (Global)
aria-label | Characteristic | PT: NormalizedString | [0..1] | aria-label | Attribute (Global)
aria-labelledby | Characteristic | PT: IDREFS | [0..1] | aria-labelledby | Attribute (Global)
aria-level | Characteristic | DT: ARIALevelInteger (PT: Integer) | [0..1] | aria-level | Attribute (Global)
aria-live | Characteristic | [ Enumeration (ARIALiveValue) ] | [0..1] | aria-live | Attribute (Global)
aria-orientation | Characteristic | [ Enumeration (ARIAOrientationValue) ] | [0..1] | aria-orientation | Attribute (Global)
aria-owns | Characteristic | PT: IDREFS | [0..1] | aria-owns | Attribute (Global)
dataExtension | Characteristic | DT: DataHTML5Extension (PT: AnyTypeLax) | [0..*] | dataExtension | Attribute (Global)

### 2.3.13 BaseSequenceXBase Class Mapping

The UML/XSD Mapping for the "BaseSequenceXBase" Class is given in Table 2.3.13.

Table 2.3.13 UML/XSD Mapping for the "BaseSequenceXBase" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
BaseSequenceXBase | Core | Container [ Sequence ] | - N/A - | BaseSequenceXBase.Type | ComplexType
id | Characteristic | DT: UniqueIdentifier (PT: ID) | [0..1] | id | Attribute (Global)
class | Characteristic | [ List (StringList) ] | [0..1] | class | Attribute (Global)
language | Characteristic | PT: Language | [0..1] | xml:lang | Attribute (Global)
label | Characteristic | PT: NormalizedString | [0..1] | label | Attribute (Global)
base | Characteristic | PT: Base | [0..1] | xml:base | Attribute (Global)
dir | Characteristic | [ Enumeration (DIR) ] | [0..1] | dir | Attribute (Global)
role | Characteristic | [ Enumeration (ARIARoleValue) ] | [0..1] | role | Attribute (Global)
aria-controls | Characteristic | PT: IDREFS | [0..1] | aria-controls | Attribute (Global)
aria-describedby | Characteristic | PT: IDREFS | [0..1] | aria-describedby | Attribute (Global)
aria-flowto | Characteristic | PT: IDREFS | [0..1] | aria-flowto | Attribute (Global)
aria-label | Characteristic | PT: NormalizedString | [0..1] | aria-label | Attribute (Global)
aria-labelledby | Characteristic | PT: IDREFS | [0..1] | aria-labelledby | Attribute (Global)
aria-level | Characteristic | DT: ARIALevelInteger (PT: Integer) | [0..1] | aria-level | Attribute (Global)
aria-live | Characteristic | [ Enumeration (ARIALiveValue) ] | [0..1] | aria-live | Attribute (Global)
aria-orientation | Characteristic | [ Enumeration (ARIAOrientationValue) ] | [0..1] | aria-orientation | Attribute (Global)
aria-owns | Characteristic | PT: IDREFS | [0..1] | aria-owns | Attribute (Global)
dataExtension | Characteristic | DT: DataHTML5Extension (PT: AnyTypeLax) | [0..*] | dataExtension | Attribute (Global)

### 2.3.14 BlockQuote Class Mapping

The UML/XSD Mapping for the "BlockQuote" Class is given in Table 2.3.14.

Table 2.3.14 UML/XSD Mapping for the "BlockQuote" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
BlockQuote | Core | Container [ Sequence ] | - N/A - | BlockQuote.Type | ComplexType
cite | Characteristic | PT: AnyURI | [0..1] | cite | Attribute (Global)
positionObjectStage | Attribute | PositionObjectStage | XOR [0.. *] [1] | positionObjectStage | Element (Global)
customInteraction | Attribute | CustomInteraction | XOR [0.. *] [1] | customInteraction | Element (Global)
drawingInteraction | Attribute | DrawingInteraction | XOR [0.. *] [1] | drawingInteraction | Element (Global)
gapMatchInteraction | Attribute | GapMatchInteraction | XOR [0.. *] [1] | gapMatchInteraction | Element (Global)
matchInteraction | Attribute | MatchInteraction | XOR [0.. *] [1] | matchInteraction | Element (Global)
graphicGapMatchInteraction | Attribute | GraphicGapMatchInteraction | XOR [0.. *] [1] | graphicGapMatchInteraction | Element (Global)
hotspotInteraction | Attribute | HotspotInteraction | XOR [0.. *] [1] | hotspotInteraction | Element (Global)
graphicOrderInteraction | Attribute | GraphicOrderInteraction | XOR [0.. *] [1] | graphicOrderInteraction | Element (Global)
selectPointInteraction | Attribute | SelectPointInteraction | XOR [0.. *] [1] | selectPointInteraction | Element (Global)
graphicAssociateInteraction | Attribute | GraphicAssociateInteraction | XOR [0.. *] [1] | graphicAssociateInteraction | Element (Global)
sliderInteraction | Attribute | SliderInteraction | XOR [0.. *] [1] | sliderInteraction | Element (Global)
choiceInteraction | Attribute | ChoiceInteraction | XOR [0.. *] [1] | choiceInteraction | Element (Global)
mediaInteraction | Attribute | MediaInteraction | XOR [0.. *] [1] | mediaInteraction | Element (Global)
hottextInteraction | Attribute | HotTextInteraction | XOR [0.. *] [1] | hottextInteraction | Element (Global)
orderInteraction | Attribute | OrderInteraction | XOR [0.. *] [1] | orderInteraction | Element (Global)
extendedTextInteraction | Attribute | ExtendedTextInteraction | XOR [0.. *] [1] | extendedTextInteraction | Element (Global)
uploadInteraction | Attribute | UploadInteraction | XOR [0.. *] [1] | uploadInteraction | Element (Global)
associateInteraction | Attribute | AssociateInteraction | XOR [0.. *] [1] | associateInteraction | Element (Global)
feedbackBlock | Attribute | FeedbackBlock | XOR [0.. *] [1] | feedbackBlock | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [0.. *] [1] | templateBlock | Element (Global)
infoControl | Attribute | InfoControl | XOR [0.. *] [1] | infoControl | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)

### 2.3.15 BranchRule Class Mapping

The UML/XSD Mapping for the "BranchRule" Class is given in Table 2.3.15.

Table 2.3.15 UML/XSD Mapping for the "BranchRule" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
BranchRule | Core | Container [ Sequence ] | - N/A - | BranchRule.Type | ComplexType
target | Characteristic | DT: Identifier (PT: NCName) | [1] | target | Attribute (Global)
and | Attribute | Logic1toMany | XOR [1] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1] [1] | match | Element (Global)
index | Attribute | Index | XOR [1] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1] [1] | mathOperator | Element (Global)

### 2.3.16 Caption Class Mapping

The UML/XSD Mapping for the "Caption" Class is given in Table 2.3.16.

Table 2.3.16 UML/XSD Mapping for the "Caption" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Caption | Core | Container [ Sequence ] | - N/A - | Caption.Type | ComplexType
textEntryInteraction | Attribute | TextEntryInteraction | XOR [0.. *] [1] | textEntryInteraction | Element (Global)
hottext | Attribute | HotText | XOR [0.. *] [1] | hottext | Element (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
gap | Attribute | Gap | XOR [0.. *] [1] | gap | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
inlineChoiceInteraction | Attribute | InlineChoiceInteraction | XOR [0.. *] [1] | inlineChoiceInteraction | Element (Global)
endAttemptInteraction | Attribute | EndAttemptInteraction | XOR [0.. *] [1] | endAttemptInteraction | Element (Global)
customInteraction | Attribute | CustomInteraction | XOR [0.. *] [1] | customInteraction | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.17 ChoiceInteraction Class Mapping

The UML/XSD Mapping for the "ChoiceInteraction" Class is given in Table 2.3.17.

Table 2.3.17 UML/XSD Mapping for the "ChoiceInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
ChoiceInteraction | Core | Container [ Sequence ] | - N/A - | ChoiceInteraction.Type | ComplexType
shuffle | Characteristic | PT: Boolean | [0..1] | shuffle | Attribute (Global)
maxChoices | Characteristic | PT: NonNegativeInteger | [0..1] | maxChoices | Attribute (Global)
minChoices | Characteristic | PT: NonNegativeInteger | [0..1] | minChoices | Attribute (Global)
orientation | Characteristic | [ Enumeration (Orientation) ] | [0..1] | orientation | Attribute (Global)
simpleChoice | Attribute | SimpleChoice | [1.. *] | simpleChoice | Element (Global)

### 2.3.18 Col Class Mapping

The UML/XSD Mapping for the "Col" Class is given in Table 2.3.18.

Table 2.3.18 UML/XSD Mapping for the "Col" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Col | Core | Container [ Sequence ] | - N/A - | Col.Type | ComplexType
span | Characteristic | PT: Int | [0..1] | span | Attribute (Global)

### 2.3.19 ColGroup Class Mapping

The UML/XSD Mapping for the "ColGroup" Class is given in Table 2.3.19.

Table 2.3.19 UML/XSD Mapping for the "ColGroup" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
ColGroup | Core | Container [ Sequence ] | - N/A - | ColGroup.Type | ComplexType
span | Characteristic | PT: Int | [0..1] | span | Attribute (Global)
col | Attribute | Col | [0.. *] | col | Element (Global)

### 2.3.20 CorrectResponse Class Mapping

The UML/XSD Mapping for the "CorrectResponse" Class is given in Table 2.3.20.

Table 2.3.20 UML/XSD Mapping for the "CorrectResponse" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
CorrectResponse | Core | Container [ Sequence ] | - N/A - | CorrectResponse.Type | ComplexType
interpretation | Characteristic | PT: String | [0..1] | interpretation | Attribute (Global)
value | Attribute | DT: Value (PT: NormalizedString) | [1.. *] | value | Element (Global)

### 2.3.21 CustomInteraction Class Mapping

The UML/XSD Mapping for the "CustomInteraction" Class is given in Table 2.3.21.

Table 2.3.21 UML/XSD Mapping for the "CustomInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
CustomInteraction | Core | Container [ Sequence ] | - N/A - | CustomInteraction.Type | ComplexType
extension | Characteristic | PT: NamespaceLax | [0..*] | extension | Attribute (Global)
extension | Attribute | PT: AnyTypeLax | [0.. *] | extension | Element (Global)

### 2.3.22 CustomOperator Class Mapping

The UML/XSD Mapping for the "CustomOperator" Class is given in Table 2.3.22.

Table 2.3.22 UML/XSD Mapping for the "CustomOperator" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
CustomOperator | Core | Container [ Sequence ] | - N/A - | CustomOperator.Type | ComplexType
class | Characteristic | DT: Identifier (PT: NCName) | [0..1] | class | Attribute (Global)
definition | Characteristic | PT: AnyURI | [0..1] | definition | Attribute (Global)
extension | Characteristic | PT: NamespaceLax | [0..*] | extension | Attribute (Global)
and | Attribute | Logic1toMany | XOR [0.. *] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [0.. *] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [0.. *] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [0.. *] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [0.. *] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [0.. *] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [0.. *] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [0.. *] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [0.. *] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [0.. *] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [0.. *] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [0.. *] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [0.. *] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [0.. *] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [0.. *] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [0.. *] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [0.. *] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [0.. *] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [0.. *] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [0.. *] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [0.. *] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [0.. *] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [0.. *] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [0.. *] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [0.. *] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [0.. *] [1] | match | Element (Global)
index | Attribute | Index | XOR [0.. *] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [0.. *] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [0.. *] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [0.. *] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [0.. *] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [0.. *] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [0.. *] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [0.. *] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [0.. *] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [0.. *] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [0.. *] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [0.. *] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [0.. *] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [0.. *] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [0.. *] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [0.. *] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [0.. *] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [0.. *] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [0.. *] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [0.. *] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [0.. *] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [0.. *] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [0.. *] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [0.. *] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [0.. *] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [0.. *] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [0.. *] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [0.. *] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [0.. *] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [0.. *] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [0.. *] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [0.. *] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [0.. *] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [0.. *] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [0.. *] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [0.. *] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [0.. *] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [0.. *] [1] | mathOperator | Element (Global)
extension | Attribute | PT: NamespaceLax | [0.. *] | extension | Element (Global)

### 2.3.23 DD Class Mapping

The UML/XSD Mapping for the "DD" Class is given in Table 2.3.23.

Table 2.3.23 UML/XSD Mapping for the "DD" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
DD | Core | Container [ Sequence ] | - N/A - | DD.Type | ComplexType
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
feedbackBlock | Attribute | FeedbackBlock | XOR [0.. *] [1] | feedbackBlock | Element (Global)
hottext | Attribute | HotText | XOR [0.. *] [1] | hottext | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [0.. *] [1] | templateBlock | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
textEntryInteraction | Attribute | TextEntryInteraction | XOR [0.. *] [1] | textEntryInteraction | Element (Global)
inlineChoiceInteraction | Attribute | InlineChoiceInteraction | XOR [0.. *] [1] | inlineChoiceInteraction | Element (Global)
endAttemptInteraction | Attribute | EndAttemptInteraction | XOR [0.. *] [1] | endAttemptInteraction | Element (Global)
customInteraction | Attribute | CustomInteraction | XOR [0.. *] [1] | customInteraction | Element (Global)
drawingInteraction | Attribute | DrawingInteraction | XOR [0.. *] [1] | drawingInteraction | Element (Global)
gapMatchInteraction | Attribute | GapMatchInteraction | XOR [0.. *] [1] | gapMatchInteraction | Element (Global)
matchInteraction | Attribute | MatchInteraction | XOR [0.. *] [1] | matchInteraction | Element (Global)
graphicGapMatchInteraction | Attribute | GraphicGapMatchInteraction | XOR [0.. *] [1] | graphicGapMatchInteraction | Element (Global)
hotspotInteraction | Attribute | HotspotInteraction | XOR [0.. *] [1] | hotspotInteraction | Element (Global)
graphicOrderInteraction | Attribute | GraphicOrderInteraction | XOR [0.. *] [1] | graphicOrderInteraction | Element (Global)
selectPointInteraction | Attribute | SelectPointInteraction | XOR [0.. *] [1] | selectPointInteraction | Element (Global)
graphicAssociateInteraction | Attribute | GraphicAssociateInteraction | XOR [0.. *] [1] | graphicAssociateInteraction | Element (Global)
sliderInteraction | Attribute | SliderInteraction | XOR [0.. *] [1] | sliderInteraction | Element (Global)
choiceInteraction | Attribute | ChoiceInteraction | XOR [0.. *] [1] | choiceInteraction | Element (Global)
mediaInteraction | Attribute | MediaInteraction | XOR [0.. *] [1] | mediaInteraction | Element (Global)
hottextInteraction | Attribute | HotTextInteraction | XOR [0.. *] [1] | hottextInteraction | Element (Global)
orderInteraction | Attribute | OrderInteraction | XOR [0.. *] [1] | orderInteraction | Element (Global)
extendedTextInteraction | Attribute | ExtendedTextInteraction | XOR [0.. *] [1] | extendedTextInteraction | Element (Global)
uploadInteraction | Attribute | UploadInteraction | XOR [0.. *] [1] | uploadInteraction | Element (Global)
associateInteraction | Attribute | AssociateInteraction | XOR [0.. *] [1] | associateInteraction | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.24 DL Class Mapping

The UML/XSD Mapping for the "DL" Class is given in Table 2.3.24.

Table 2.3.24 UML/XSD Mapping for the "DL" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
DL | Core | Container [ Sequence ] | - N/A - | DL.Type | ComplexType
dd | Attribute | DD | XOR [0.. *] [1] | dd | Element (Global)
dt | Attribute | DT | XOR [0.. *] [1] | dt | Element (Global)

### 2.3.25 DT Class Mapping

The UML/XSD Mapping for the "DT" Class is given in Table 2.3.25.

Table 2.3.25 UML/XSD Mapping for the "DT" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
DT | Core | Container [ Sequence ] | - N/A - | DT.Type | ComplexType
textEntryInteraction | Attribute | TextEntryInteraction | XOR [0.. *] [1] | textEntryInteraction | Element (Global)
hottext | Attribute | HotText | XOR [0.. *] [1] | hottext | Element (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
gap | Attribute | Gap | XOR [0.. *] [1] | gap | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
inlineChoiceInteraction | Attribute | InlineChoiceInteraction | XOR [0.. *] [1] | inlineChoiceInteraction | Element (Global)
endAttemptInteraction | Attribute | EndAttemptInteraction | XOR [0.. *] [1] | endAttemptInteraction | Element (Global)
customInteraction | Attribute | CustomInteraction | XOR [0.. *] [1] | customInteraction | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.26 DefaultValue Class Mapping

The UML/XSD Mapping for the "DefaultValue" Class is given in Table 2.3.26.

Table 2.3.26 UML/XSD Mapping for the "DefaultValue" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
DefaultValue | Core | Container [ Sequence ] | - N/A - | DefaultValue.Type | ComplexType
interpretation | Characteristic | PT: NormalizedString | [0..1] | interpretation | Attribute (Global)
value | Attribute | DT: Value (PT: NormalizedString) | [1.. *] | value | Element (Global)

### 2.3.27 Div Class Mapping

The UML/XSD Mapping for the "Div" Class is given in Table 2.3.27.

Table 2.3.27 UML/XSD Mapping for the "Div" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Div | Core | Container [ Sequence ] | - N/A - | Div.Type | ComplexType
positionObjectStage | Attribute | PositionObjectStage | XOR [0.. *] [1] | positionObjectStage | Element (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [1] [1] | printedVariable | Element (Global)
feedbackBlock | Attribute | FeedbackBlock | XOR [1] [1] | feedbackBlock | Element (Global)
hottext | Attribute | HotText | XOR [1] [1] | hottext | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [1] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [1] [1] | templateInline | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [1] [1] | templateBlock | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [1] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [1] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [1] [1] | xi:include | Element (Global)
textEntryInteraction | Attribute | TextEntryInteraction | XOR [1] [1] | textEntryInteraction | Element (Global)
inlineChoiceInteraction | Attribute | InlineChoiceInteraction | XOR [1] [1] | inlineChoiceInteraction | Element (Global)
endAttemptInteraction | Attribute | EndAttemptInteraction | XOR [1] [1] | endAttemptInteraction | Element (Global)
customInteraction | Attribute | CustomInteraction | XOR [1] [1] | customInteraction | Element (Global)
drawingInteraction | Attribute | DrawingInteraction | XOR [1] [1] | drawingInteraction | Element (Global)
gapMatchInteraction | Attribute | GapMatchInteraction | XOR [1] [1] | gapMatchInteraction | Element (Global)
matchInteraction | Attribute | MatchInteraction | XOR [1] [1] | matchInteraction | Element (Global)
graphicGapMatchInteraction | Attribute | GraphicGapMatchInteraction | XOR [1] [1] | graphicGapMatchInteraction | Element (Global)
hotspotInteraction | Attribute | HotspotInteraction | XOR [1] [1] | hotspotInteraction | Element (Global)
graphicOrderInteraction | Attribute | GraphicOrderInteraction | XOR [1] [1] | graphicOrderInteraction | Element (Global)
selectPointInteraction | Attribute | SelectPointInteraction | XOR [1] [1] | selectPointInteraction | Element (Global)
graphicAssociateInteraction | Attribute | GraphicAssociateInteraction | XOR [1] [1] | graphicAssociateInteraction | Element (Global)
sliderInteraction | Attribute | SliderInteraction | XOR [1] [1] | sliderInteraction | Element (Global)
choiceInteraction | Attribute | ChoiceInteraction | XOR [1] [1] | choiceInteraction | Element (Global)
mediaInteraction | Attribute | MediaInteraction | XOR [1] [1] | mediaInteraction | Element (Global)
hottextInteraction | Attribute | HotTextInteraction | XOR [1] [1] | hottextInteraction | Element (Global)
orderInteraction | Attribute | OrderInteraction | XOR [1] [1] | orderInteraction | Element (Global)
extendedTextInteraction | Attribute | ExtendedTextInteraction | XOR [1] [1] | extendedTextInteraction | Element (Global)
uploadInteraction | Attribute | UploadInteraction | XOR [1] [1] | uploadInteraction | Element (Global)
associateInteraction | Attribute | AssociateInteraction | XOR [1] [1] | associateInteraction | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.28 DrawingInteraction Class Mapping

The UML/XSD Mapping for the "DrawingInteraction" Class is given in Table 2.3.28.

Table 2.3.28 UML/XSD Mapping for the "DrawingInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
DrawingInteraction | Core | Container [ Sequence ] | - N/A - | DrawingInteraction.Type | ComplexType
object | Attribute | Object | [1] | object | Element (Global)

### 2.3.29 EndAttemptInteraction Class Mapping

The UML/XSD Mapping for the "EndAttemptInteraction" Class is given in Table 2.3.29.

Table 2.3.29 UML/XSD Mapping for the "EndAttemptInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
EndAttemptInteraction | Core | Container [ Sequence ] | - N/A - | EndAttemptInteraction.Type | ComplexType
responseIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | responseIdentifier | Attribute (Global)
title | Characteristic | PT: String | [1] | title | Attribute (Global)
countAttempt | Characteristic | PT: Boolean | [0..1] | countAttempt | Attribute (Global)

### 2.3.30 Equal Class Mapping

The UML/XSD Mapping for the "Equal" Class is given in Table 2.3.30.

Table 2.3.30 UML/XSD Mapping for the "Equal" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Equal | Core | Container [ Sequence ] | - N/A - | Equal.Type | ComplexType
toleranceMode | Characteristic | [ Enumeration (ToleranceMode) ] | [0..1] | toleranceMode | Attribute (Global)
tolerance | Characteristic | [ List (ToleranceList) ] | [0..1] | tolerance | Attribute (Global)
includeLowerBound | Characteristic | PT: Boolean | [0..1] | includeLowerBound | Attribute (Global)
includeUpperBound | Characteristic | PT: Boolean | [0..1] | includeUpperBound | Attribute (Global)
and | Attribute | Logic1toMany | XOR [2] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [2] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [2] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [2] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [2] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [2] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [2] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [2] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [2] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [2] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [2] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [2] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [2] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [2] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [2] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [2] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [2] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [2] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [2] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [2] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [2] [1] | match | Element (Global)
index | Attribute | Index | XOR [2] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [2] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [2] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [2] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [2] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [2] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [2] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [2] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [2] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [2] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [2] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [2] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [2] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [2] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [2] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [2] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [2] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [2] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [2] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [2] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [2] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [2] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [2] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [2] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [2] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [2] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [2] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [2] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [2] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [2] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [2] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [2] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [2] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [2] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [2] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [2] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [2] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [2] [1] | mathOperator | Element (Global)

### 2.3.31 EqualRounded Class Mapping

The UML/XSD Mapping for the "EqualRounded" Class is given in Table 2.3.31.

Table 2.3.31 UML/XSD Mapping for the "EqualRounded" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
EqualRounded | Core | Container [ Sequence ] | - N/A - | EqualRounded.Type | ComplexType
roundingMode | Characteristic | [ Enumeration (RoundingMode) ] | [0..1] | roundingMode | Attribute (Global)
figures | Characteristic | [ Union (IntegerOrVariableRef) ] | [1] | figures | Attribute (Global)
and | Attribute | Logic1toMany | XOR [2] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [2] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [2] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [2] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [2] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [2] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [2] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [2] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [2] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [2] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [2] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [2] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [2] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [2] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [2] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [2] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [2] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [2] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [2] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [2] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [2] [1] | match | Element (Global)
index | Attribute | Index | XOR [2] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [2] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [2] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [2] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [2] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [2] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [2] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [2] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [2] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [2] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [2] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [2] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [2] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [2] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [2] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [2] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [2] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [2] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [2] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [2] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [2] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [2] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [2] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [2] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [2] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [2] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [2] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [2] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [2] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [2] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [2] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [2] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [2] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [2] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [2] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [2] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [2] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [2] [1] | mathOperator | Element (Global)

### 2.3.32 ExtendedTextInteraction Class Mapping

The UML/XSD Mapping for the "ExtendedTextInteraction" Class is given in Table 2.3.32.

Table 2.3.32 UML/XSD Mapping for the "ExtendedTextInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
ExtendedTextInteraction | Core | Container [ Sequence ] | - N/A - | ExtendedTextInteraction.Type | ComplexType
base | Characteristic | PT: Int | [0..1] | base | Attribute (Global)
stringIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | stringIdentifier | Attribute (Global)
expectedLength | Characteristic | PT: NonNegativeInteger | [0..1] | expectedLength | Attribute (Global)
patternMask | Characteristic | PT: String | [0..1] | patternMask | Attribute (Global)
placeholderText | Characteristic | PT: String | [0..1] | placeholderText | Attribute (Global)
maxStrings | Characteristic | PT: NonNegativeInteger | [0..1] | maxStrings | Attribute (Global)
minStrings | Characteristic | PT: NonNegativeInteger | [0..1] | minStrings | Attribute (Global)
expectedLines | Characteristic | PT: NonNegativeInteger | [0..1] | expectedLines | Attribute (Global)
format | Characteristic | [ Enumeration (TextFormat) ] | [0..1] | format | Attribute (Global)

### 2.3.33 FeedbackBlock Class Mapping

The UML/XSD Mapping for the "FeedbackBlock" Class is given in Table 2.3.33.

Table 2.3.33 UML/XSD Mapping for the "FeedbackBlock" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
FeedbackBlock | Core | Container [ Sequence ] | - N/A - | FeedbackBlock.Type | ComplexType
outcomeIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | outcomeIdentifier | Attribute (Global)
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [0..1] | showHide | Attribute (Global)
positionObjectStage | Attribute | PositionObjectStage | XOR [1] [1] | positionObjectStage | Element (Global)
customInteraction | Attribute | CustomInteraction | XOR [1] [1] | customInteraction | Element (Global)
drawingInteraction | Attribute | DrawingInteraction | XOR [1] [1] | drawingInteraction | Element (Global)
gapMatchInteraction | Attribute | GapMatchInteraction | XOR [1] [1] | gapMatchInteraction | Element (Global)
matchInteraction | Attribute | MatchInteraction | XOR [1] [1] | matchInteraction | Element (Global)
graphicGapMatchInteraction | Attribute | GraphicGapMatchInteraction | XOR [1] [1] | graphicGapMatchInteraction | Element (Global)
hotspotInteraction | Attribute | HotspotInteraction | XOR [1] [1] | hotspotInteraction | Element (Global)
graphicOrderInteraction | Attribute | GraphicOrderInteraction | XOR [1] [1] | graphicOrderInteraction | Element (Global)
selectPointInteraction | Attribute | SelectPointInteraction | XOR [1] [1] | selectPointInteraction | Element (Global)
graphicAssociateInteraction | Attribute | GraphicAssociateInteraction | XOR [1] [1] | graphicAssociateInteraction | Element (Global)
sliderInteraction | Attribute | SliderInteraction | XOR [1] [1] | sliderInteraction | Element (Global)
choiceInteraction | Attribute | ChoiceInteraction | XOR [1] [1] | choiceInteraction | Element (Global)
mediaInteraction | Attribute | MediaInteraction | XOR [1] [1] | mediaInteraction | Element (Global)
hottextInteraction | Attribute | HotTextInteraction | XOR [1] [1] | hottextInteraction | Element (Global)
orderInteraction | Attribute | OrderInteraction | XOR [1] [1] | orderInteraction | Element (Global)
extendedTextInteraction | Attribute | ExtendedTextInteraction | XOR [1] [1] | extendedTextInteraction | Element (Global)
uploadInteraction | Attribute | UploadInteraction | XOR [1] [1] | uploadInteraction | Element (Global)
associateInteraction | Attribute | AssociateInteraction | XOR [1] [1] | associateInteraction | Element (Global)
feedbackBlock | Attribute | FeedbackBlock | XOR [1] [1] | feedbackBlock | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [1] [1] | templateBlock | Element (Global)
infoControl | Attribute | InfoControl | XOR [1] [1] | infoControl | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [1] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [1] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [1] [1] | xi:include | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
stylesheet | Attribute | DT: StyleSheet (PT: Empty) | [0.. *] | stylesheet | Element (Global)
apipAccessibility | Attribute | [ Imported (APIPAccessibility) ] | [0..1] | apipAccessibility | Element (Global)

### 2.3.34 FeedbackInline Class Mapping

The UML/XSD Mapping for the "FeedbackInline" Class is given in Table 2.3.34.

Table 2.3.34 UML/XSD Mapping for the "FeedbackInline" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
FeedbackInline | Core | Container [ Sequence ] | - N/A - | FeedbackInline.Type | ComplexType
outcomeIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | outcomeIdentifier | Attribute (Global)
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [0..1] | showHide | Attribute (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)

### 2.3.35 FieldValue Class Mapping

The UML/XSD Mapping for the "FieldValue" Class is given in Table 2.3.35.

Table 2.3.35 UML/XSD Mapping for the "FieldValue" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
FieldValue | Core | Container [ Sequence ] | - N/A - | FieldValue.Type | ComplexType
fieldIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | fieldIdentifier | Attribute (Global)
and | Attribute | Logic1toMany | XOR [1] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1] [1] | match | Element (Global)
index | Attribute | Index | XOR [1] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1] [1] | mathOperator | Element (Global)

### 2.3.36 Gap Class Mapping

The UML/XSD Mapping for the "Gap" Class is given in Table 2.3.36.

Table 2.3.36 UML/XSD Mapping for the "Gap" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Gap | Core | Container [ Sequence ] | - N/A - | Gap.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
templateIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | templateIdentifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [0..1] | showHide | Attribute (Global)
matchGroup | Characteristic | [ List (IdentifierList) ] | [0..1] | matchGroup | Attribute (Global)
required | Characteristic | PT: Boolean | [0..1] | required | Attribute (Global)

### 2.3.37 GapImg Class Mapping

The UML/XSD Mapping for the "GapImg" Class is given in Table 2.3.37.

Table 2.3.37 UML/XSD Mapping for the "GapImg" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
GapImg | Core | Container [ Sequence ] | - N/A - | GapImg.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
templateIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | templateIdentifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [0..1] | showHide | Attribute (Global)
matchGroup | Characteristic | [ List (IdentifierList) ] | [0..1] | matchGroup | Attribute (Global)
matchMax | Characteristic | PT: NonNegativeInteger | [1] | matchMax | Attribute (Global)
matchMin | Characteristic | PT: NonNegativeInteger | [0..1] | matchMin | Attribute (Global)
objectLabel | Characteristic | PT: String | [0..1] | objectLabel | Attribute (Global)
top | Characteristic | PT: NormalizedString | [0..1] | top | Attribute (Global)
left | Characteristic | PT: NormalizedString | [0..1] | left | Attribute (Global)
object | Attribute | Object | [1] | object | Element (Global)

### 2.3.38 GapMatchInteraction Class Mapping

The UML/XSD Mapping for the "GapMatchInteraction" Class is given in Table 2.3.38.

Table 2.3.38 UML/XSD Mapping for the "GapMatchInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
GapMatchInteraction | Core | Container [ Sequence ] | - N/A - | GapMatchInteraction.Type | ComplexType
shuffle | Characteristic | PT: Boolean | [0..1] | shuffle | Attribute (Global)
minAssociations | Characteristic | PT: NonNegativeInteger | [0..1] | minAssociations | Attribute (Global)
maxAssociations | Characteristic | PT: NonNegativeInteger | [0..1] | maxAssociations | Attribute (Global)
gapText | Attribute | GapText | XOR [1.. *] [1] | gapText | Element (Global)
gapImg | Attribute | GapImg | XOR [1.. *] [1] | gapImg | Element (Global)
feedbackBlock | Attribute | FeedbackBlock | XOR [1.. *] [1] | feedbackBlock | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [1.. *] [1] | templateBlock | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [1.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [1.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [1.. *] [1] | xi:include | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)

### 2.3.39 GapText Class Mapping

The UML/XSD Mapping for the "GapText" Class is given in Table 2.3.39.

Table 2.3.39 UML/XSD Mapping for the "GapText" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
GapText | Core | Container [ Sequence ] | - N/A - | GapText.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
templateIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | templateIdentifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [0..1] | showHide | Attribute (Global)
matchGroup | Characteristic | [ List (IdentifierList) ] | [0..1] | matchGroup | Attribute (Global)
matchMax | Characteristic | PT: NonNegativeInteger | [1] | matchMax | Attribute (Global)
matchMin | Characteristic | PT: NonNegativeInteger | [0..1] | matchMin | Attribute (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.40 GraphicAssociateInteraction Class Mapping

The UML/XSD Mapping for the "GraphicAssociateInteraction" Class is given in Table 2.3.40.

Table 2.3.40 UML/XSD Mapping for the "GraphicAssociateInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
GraphicAssociateInteraction | Core | Container [ Sequence ] | - N/A - | GraphicAssociateInteraction.Type | ComplexType
minAssociations | Characteristic | PT: NonNegativeInteger | [0..1] | minAssociations | Attribute (Global)
maxAssociations | Characteristic | PT: NonNegativeInteger | [0..1] | maxAssociations | Attribute (Global)
object | Attribute | Object | [1] | object | Element (Global)
associableHotspot | Attribute | AssociableHotspot | [1.. *] | associableHotspot | Element (Global)

### 2.3.41 GraphicGapMatchInteraction Class Mapping

The UML/XSD Mapping for the "GraphicGapMatchInteraction" Class is given in Table 2.3.41.

Table 2.3.41 UML/XSD Mapping for the "GraphicGapMatchInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
GraphicGapMatchInteraction | Core | Container [ Sequence ] | - N/A - | GraphicGapMatchInteraction.Type | ComplexType
minAssociations | Characteristic | PT: NonNegativeInteger | [0..1] | minAssociations | Attribute (Global)
maxAssociations | Characteristic | PT: NonNegativeInteger | [0..1] | maxAssociations | Attribute (Global)
prompt | Attribute | Prompt | [0..1] | prompt | Element (Global)
object | Attribute | Object | [1] | object | Element (Global)
gapText | Attribute | GapText | XOR [1.. *] [1] | gapText | Element (Global)
gapImg | Attribute | GapImg | XOR [1.. *] [1] | gapImg | Element (Global)
associableHotspot | Attribute | AssociableHotspot | [1.. *] | associableHotspot | Element (Global)

### 2.3.42 GraphicOrderInteraction Class Mapping

The UML/XSD Mapping for the "GraphicOrderInteraction" Class is given in Table 2.3.42.

Table 2.3.42 UML/XSD Mapping for the "GraphicOrderInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
GraphicOrderInteraction | Core | Container [ Sequence ] | - N/A - | GraphicOrderInteraction.Type | ComplexType
minChoices | Characteristic | PT: NonNegativeInteger | [0..1] | minChoices | Attribute (Global)
maxChoices | Characteristic | PT: NonNegativeInteger | [0..1] | maxChoices | Attribute (Global)
prompt | Attribute | Prompt | [0..1] | prompt | Element (Global)
object | Attribute | Object | [1] | object | Element (Global)
hotspotChoice | Attribute | HotspotChoice | [1.. *] | hotspotChoice | Element (Global)

### 2.3.43 HR Class Mapping

The UML/XSD Mapping for the "HR" Class is given in Table 2.3.43.

Table 2.3.43 UML/XSD Mapping for the "HR" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
HR | Core | Container [ Sequence ] | - N/A - | HR.Type | ComplexType

### 2.3.44 HTMLText Class Mapping

The UML/XSD Mapping for the "HTMLText" Class is given in Table 2.3.44.

Table 2.3.44 UML/XSD Mapping for the "HTMLText" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
HTMLText | Core | Container [ Sequence ] | - N/A - | HTMLText.Type | ComplexType
textEntryInteraction | Attribute | TextEntryInteraction | XOR [0.. *] [1] | textEntryInteraction | Element (Global)
hottext | Attribute | HotText | XOR [0.. *] [1] | hottext | Element (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
gap | Attribute | Gap | XOR [0.. *] [1] | gap | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
inlineChoiceInteraction | Attribute | InlineChoiceInteraction | XOR [0.. *] [1] | inlineChoiceInteraction | Element (Global)
endAttemptInteraction | Attribute | EndAttemptInteraction | XOR [0.. *] [1] | endAttemptInteraction | Element (Global)
customInteraction | Attribute | CustomInteraction | XOR [0.. *] [1] | customInteraction | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.45 HotText Class Mapping

The UML/XSD Mapping for the "HotText" Class is given in Table 2.3.45.

Table 2.3.45 UML/XSD Mapping for the "HotText" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
HotText | Core | Container [ Sequence ] | - N/A - | HotText.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
templateIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | templateIdentifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [0..1] | showHide | Attribute (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.46 HotTextInteraction Class Mapping

The UML/XSD Mapping for the "HotTextInteraction" Class is given in Table 2.3.46.

Table 2.3.46 UML/XSD Mapping for the "HotTextInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
HotTextInteraction | Core | Container [ Sequence ] | - N/A - | HotTextInteraction.Type | ComplexType
maxChoices | Characteristic | PT: NonNegativeInteger | [0..1] | maxChoices | Attribute (Global)
minChoices | Characteristic | PT: NonNegativeInteger | [0..1] | minChoices | Attribute (Global)
feedbackBlock | Attribute | FeedbackBlock | XOR [1.. *] [1] | feedbackBlock | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [1.. *] [1] | templateBlock | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [1.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [1.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [1.. *] [1] | xi:include | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)

### 2.3.47 HotspotChoice Class Mapping

The UML/XSD Mapping for the "HotspotChoice" Class is given in Table 2.3.47.

Table 2.3.47 UML/XSD Mapping for the "HotspotChoice" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
HotspotChoice | Core | Container [ Sequence ] | - N/A - | HotspotChoice.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
templateIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | templateIdentifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [0..1] | showHide | Attribute (Global)
shape | Characteristic | [ Enumeration (Shape) ] | [1] | shape | Attribute (Global)
coords | Characteristic | DT: Coords (PT: NormalizedString) | [1] | coords | Attribute (Global)
hotspotLabel | Characteristic | PT: String | [0..1] | hotspotLabel | Attribute (Global)

### 2.3.48 HotspotInteraction Class Mapping

The UML/XSD Mapping for the "HotspotInteraction" Class is given in Table 2.3.48.

Table 2.3.48 UML/XSD Mapping for the "HotspotInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
HotspotInteraction | Core | Container [ Sequence ] | - N/A - | HotspotInteraction.Type | ComplexType
minChoices | Characteristic | PT: NonNegativeInteger | [0..1] | minChoices | Attribute (Global)
maxChoices | Characteristic | PT: NonNegativeInteger | [0..1] | maxChoices | Attribute (Global)
object | Attribute | Object | [1] | object | Element (Global)
hotspotChoice | Attribute | HotspotChoice | [1.. *] | hotspotChoice | Element (Global)

### 2.3.49 Img Class Mapping

The UML/XSD Mapping for the "Img" Class is given in Table 2.3.49.

Table 2.3.49 UML/XSD Mapping for the "Img" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Img | Core | Container [ Sequence ] | - N/A - | Img.Type | ComplexType
src | Characteristic | PT: AnyURI | [1] | src | Attribute (Global)
alt | Characteristic | PT: String | [1] | alt | Attribute (Global)
longdesc | Characteristic | PT: AnyURI | [0..1] | longdesc | Attribute (Global)
height | Characteristic | DT: Length (PT: String) | [0..1] | height | Attribute (Global)
width | Characteristic | DT: Length (PT: String) | [0..1] | width | Attribute (Global)

### 2.3.50 Index Class Mapping

The UML/XSD Mapping for the "Index" Class is given in Table 2.3.50.

Table 2.3.50 UML/XSD Mapping for the "Index" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Index | Core | Container [ Sequence ] | - N/A - | Index.Type | ComplexType
n | Characteristic | [ Union (IntOrIdentifier) ] | [1] | n | Attribute (Global)
and | Attribute | Logic1toMany | XOR [1] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1] [1] | match | Element (Global)
index | Attribute | Index | XOR [1] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1] [1] | mathOperator | Element (Global)

### 2.3.51 InfoControl Class Mapping

The UML/XSD Mapping for the "InfoControl" Class is given in Table 2.3.51.

Table 2.3.51 UML/XSD Mapping for the "InfoControl" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
InfoControl | Core | Container [ Sequence ] | - N/A - | InfoControl.Type | ComplexType
title | Characteristic | PT: NormalizedString | [1] | title | Attribute (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
feedbackBlock | Attribute | FeedbackBlock | XOR [0.. *] [1] | feedbackBlock | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [0.. *] [1] | templateBlock | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.52 InlineChoice Class Mapping

The UML/XSD Mapping for the "InlineChoice" Class is given in Table 2.3.52.

Table 2.3.52 UML/XSD Mapping for the "InlineChoice" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
InlineChoice | Core | Container [ Sequence ] | - N/A - | InlineChoice.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
fixed | Characteristic | PT: Boolean | [0..1] | fixed | Attribute (Global)
templateIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | templateIdentifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [0..1] | showHide | Attribute (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.53 InlineChoiceInteraction Class Mapping

The UML/XSD Mapping for the "InlineChoiceInteraction" Class is given in Table 2.3.53.

Table 2.3.53 UML/XSD Mapping for the "InlineChoiceInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
InlineChoiceInteraction | Core | Container [ Sequence ] | - N/A - | InlineChoiceInteraction.Type | ComplexType
shuffle | Characteristic | PT: Boolean | [0..1] | shuffle | Attribute (Global)
required | Characteristic | PT: Boolean | [0..1] | required | Attribute (Global)
label | Attribute | Label | [0..1] | label | Element (Global)
inlineChoice | Attribute | InlineChoice | [1.. *] | inlineChoice | Element (Global)

### 2.3.54 Inside Class Mapping

The UML/XSD Mapping for the "Inside" Class is given in Table 2.3.54.

Table 2.3.54 UML/XSD Mapping for the "Inside" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Inside | Core | Container [ Sequence ] | - N/A - | Inside.Type | ComplexType
shape | Characteristic | [ Enumeration (Shape) ] | [1] | shape | Attribute (Global)
coords | Characteristic | DT: Coords (PT: NormalizedString) | [1] | coords | Attribute (Global)
and | Attribute | Logic1toMany | XOR [1] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1] [1] | match | Element (Global)
index | Attribute | Index | XOR [1] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1] [1] | mathOperator | Element (Global)

### 2.3.55 InterpolationTable Class Mapping

The UML/XSD Mapping for the "InterpolationTable" Class is given in Table 2.3.55.

Table 2.3.55 UML/XSD Mapping for the "InterpolationTable" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
InterpolationTable | Core | Container [ Sequence ] | - N/A - | InterpolationTable.Type | ComplexType
defaultValue | Characteristic | PT: String | [0..1] | defaultValue | Attribute (Global)
interpolationTableEntry | Attribute | DT: InterpolationTableEntry (PT: Empty) | [1.. *] | interpolationTableEntry | Element (Global)

### 2.3.56 ItemBody Class Mapping

The UML/XSD Mapping for the "ItemBody" Class is given in Table 2.3.56.

Table 2.3.56 UML/XSD Mapping for the "ItemBody" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
ItemBody | Core | Container [ Sequence ] | - N/A - | ItemBody.Type | ComplexType
id | Characteristic | DT: UniqueIdentifier (PT: ID) | [0..1] | id | Attribute (Global)
class | Characteristic | [ List (StringList) ] | [0..1] | class | Attribute (Global)
language | Characteristic | PT: Language | [0..1] | xml:lang | Attribute (Global)
label | Characteristic | PT: NormalizedString | [0..1] | label | Attribute (Global)
dir | Characteristic | [ Enumeration (DIR) ] | [0..1] | dir | Attribute (Global)
rubricBlock | Attribute | RubricBlock | XOR [1.. *] [1] | rubricBlock | Element (Global)
positionObjectStage | Attribute | PositionObjectStage | XOR [1] [1] | positionObjectStage | Element (Global)
customInteraction | Attribute | CustomInteraction | XOR [1] [1] | customInteraction | Element (Global)
drawingInteraction | Attribute | DrawingInteraction | XOR [1] [1] | drawingInteraction | Element (Global)
gapMatchInteraction | Attribute | GapMatchInteraction | XOR [1] [1] | gapMatchInteraction | Element (Global)
matchInteraction | Attribute | MatchInteraction | XOR [1] [1] | matchInteraction | Element (Global)
graphicGapMatchInteraction | Attribute | GraphicGapMatchInteraction | XOR [1] [1] | graphicGapMatchInteraction | Element (Global)
hotspotInteraction | Attribute | HotspotInteraction | XOR [1] [1] | hotspotInteraction | Element (Global)
graphicOrderInteraction | Attribute | GraphicOrderInteraction | XOR [1] [1] | graphicOrderInteraction | Element (Global)
selectPointInteraction | Attribute | SelectPointInteraction | XOR [1] [1] | selectPointInteraction | Element (Global)
graphicAssociateInteraction | Attribute | GraphicAssociateInteraction | XOR [1] [1] | graphicAssociateInteraction | Element (Global)
sliderInteraction | Attribute | SliderInteraction | XOR [1] [1] | sliderInteraction | Element (Global)
choiceInteraction | Attribute | ChoiceInteraction | XOR [1] [1] | choiceInteraction | Element (Global)
mediaInteraction | Attribute | MediaInteraction | XOR [1] [1] | mediaInteraction | Element (Global)
hottextInteraction | Attribute | HotTextInteraction | XOR [1] [1] | hottextInteraction | Element (Global)
orderInteraction | Attribute | OrderInteraction | XOR [1] [1] | orderInteraction | Element (Global)
extendedTextInteraction | Attribute | ExtendedTextInteraction | XOR [1] [1] | extendedTextInteraction | Element (Global)
uploadInteraction | Attribute | UploadInteraction | XOR [1] [1] | uploadInteraction | Element (Global)
associateInteraction | Attribute | AssociateInteraction | XOR [1] [1] | associateInteraction | Element (Global)
feedbackBlock | Attribute | FeedbackBlock | XOR [1] [1] | feedbackBlock | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [1] [1] | templateBlock | Element (Global)
infoControl | Attribute | InfoControl | XOR [1] [1] | infoControl | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [1] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [1] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [1] [1] | xi:include | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)

### 2.3.57 LI Class Mapping

The UML/XSD Mapping for the "LI" Class is given in Table 2.3.57.

Table 2.3.57 UML/XSD Mapping for the "LI" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
LI | Core | Container [ Sequence ] | - N/A - | LI.Type | ComplexType
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
feedbackBlock | Attribute | FeedbackBlock | XOR [0.. *] [1] | feedbackBlock | Element (Global)
hottext | Attribute | HotText | XOR [0.. *] [1] | hottext | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [0.. *] [1] | templateBlock | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
textEntryInteraction | Attribute | TextEntryInteraction | XOR [0.. *] [1] | textEntryInteraction | Element (Global)
inlineChoiceInteraction | Attribute | InlineChoiceInteraction | XOR [0.. *] [1] | inlineChoiceInteraction | Element (Global)
endAttemptInteraction | Attribute | EndAttemptInteraction | XOR [0.. *] [1] | endAttemptInteraction | Element (Global)
customInteraction | Attribute | CustomInteraction | XOR [0.. *] [1] | customInteraction | Element (Global)
drawingInteraction | Attribute | DrawingInteraction | XOR [0.. *] [1] | drawingInteraction | Element (Global)
gapMatchInteraction | Attribute | GapMatchInteraction | XOR [0.. *] [1] | gapMatchInteraction | Element (Global)
matchInteraction | Attribute | MatchInteraction | XOR [0.. *] [1] | matchInteraction | Element (Global)
graphicGapMatchInteraction | Attribute | GraphicGapMatchInteraction | XOR [0.. *] [1] | graphicGapMatchInteraction | Element (Global)
hotspotInteraction | Attribute | HotspotInteraction | XOR [0.. *] [1] | hotspotInteraction | Element (Global)
graphicOrderInteraction | Attribute | GraphicOrderInteraction | XOR [0.. *] [1] | graphicOrderInteraction | Element (Global)
selectPointInteraction | Attribute | SelectPointInteraction | XOR [0.. *] [1] | selectPointInteraction | Element (Global)
graphicAssociateInteraction | Attribute | GraphicAssociateInteraction | XOR [0.. *] [1] | graphicAssociateInteraction | Element (Global)
sliderInteraction | Attribute | SliderInteraction | XOR [0.. *] [1] | sliderInteraction | Element (Global)
choiceInteraction | Attribute | ChoiceInteraction | XOR [0.. *] [1] | choiceInteraction | Element (Global)
mediaInteraction | Attribute | MediaInteraction | XOR [0.. *] [1] | mediaInteraction | Element (Global)
hottextInteraction | Attribute | HotTextInteraction | XOR [0.. *] [1] | hottextInteraction | Element (Global)
orderInteraction | Attribute | OrderInteraction | XOR [0.. *] [1] | orderInteraction | Element (Global)
extendedTextInteraction | Attribute | ExtendedTextInteraction | XOR [0.. *] [1] | extendedTextInteraction | Element (Global)
uploadInteraction | Attribute | UploadInteraction | XOR [0.. *] [1] | uploadInteraction | Element (Global)
associateInteraction | Attribute | AssociateInteraction | XOR [0.. *] [1] | associateInteraction | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.58 Label Class Mapping

The UML/XSD Mapping for the "Label" Class is given in Table 2.3.58.

Table 2.3.58 UML/XSD Mapping for the "Label" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Label | Core | Container [ Sequence ] | - N/A - | Label.Type | ComplexType
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.59 Logic0toMany Class Mapping

The UML/XSD Mapping for the "Logic0toMany" Class is given in Table 2.3.59.

Table 2.3.59 UML/XSD Mapping for the "Logic0toMany" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Logic0toMany | Core | Container [ Sequence ] | - N/A - | Logic0toMany.Type | ComplexType
and | Attribute | Logic1toMany | XOR [0.. *] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [0.. *] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [0.. *] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [0.. *] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [0.. *] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [0.. *] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [0.. *] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [0.. *] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [0.. *] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [0.. *] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [0.. *] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [0.. *] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [0.. *] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [0.. *] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [0.. *] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [0.. *] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [0.. *] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [0.. *] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [0.. *] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [0.. *] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [0.. *] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [0.. *] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [0.. *] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [0.. *] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [0.. *] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [0.. *] [1] | match | Element (Global)
index | Attribute | Index | XOR [0.. *] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [0.. *] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [0.. *] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [0.. *] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [0.. *] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [0.. *] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [0.. *] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [0.. *] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [0.. *] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [0.. *] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [0.. *] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [0.. *] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [0.. *] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [0.. *] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [0.. *] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [0.. *] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [0.. *] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [0.. *] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [0.. *] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [0.. *] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [0.. *] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [0.. *] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [0.. *] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [0.. *] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [0.. *] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [0.. *] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [0.. *] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [0.. *] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [0.. *] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [0.. *] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [0.. *] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [0.. *] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [0.. *] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [0.. *] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [0.. *] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [0.. *] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [0.. *] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [0.. *] [1] | mathOperator | Element (Global)

### 2.3.60 Logic1toMany Class Mapping

The UML/XSD Mapping for the "Logic1toMany" Class is given in Table 2.3.60.

Table 2.3.60 UML/XSD Mapping for the "Logic1toMany" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Logic1toMany | Core | Container [ Sequence ] | - N/A - | Logic1toMany.Type | ComplexType
and | Attribute | Logic1toMany | XOR [1.. *] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1.. *] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1.. *] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1.. *] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1.. *] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1.. *] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1.. *] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1.. *] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1.. *] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1.. *] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1.. *] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1.. *] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1.. *] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1.. *] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1.. *] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1.. *] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1.. *] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1.. *] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1.. *] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1.. *] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1.. *] [1] | match | Element (Global)
index | Attribute | Index | XOR [1.. *] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1.. *] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1.. *] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1.. *] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1.. *] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1.. *] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1.. *] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1.. *] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1.. *] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1.. *] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1.. *] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1.. *] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1.. *] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1.. *] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1.. *] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1.. *] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1.. *] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1.. *] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1.. *] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1.. *] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1.. *] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1.. *] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1.. *] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1.. *] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1.. *] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1.. *] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1.. *] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1.. *] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1.. *] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1.. *] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1.. *] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1.. *] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1.. *] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1.. *] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1.. *] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1.. *] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1.. *] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1.. *] [1] | mathOperator | Element (Global)

### 2.3.61 LogicPair Class Mapping

The UML/XSD Mapping for the "LogicPair" Class is given in Table 2.3.61.

Table 2.3.61 UML/XSD Mapping for the "LogicPair" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
LogicPair | Core | Container [ Sequence ] | - N/A - | LogicPair.Type | ComplexType
and | Attribute | Logic1toMany | XOR [2] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [2] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [2] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [2] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [2] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [2] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [2] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [2] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [2] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [2] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [2] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [2] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [2] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [2] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [2] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [2] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [2] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [2] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [2] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [2] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [2] [1] | match | Element (Global)
index | Attribute | Index | XOR [2] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [2] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [2] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [2] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [2] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [2] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [2] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [2] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [2] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [2] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [2] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [2] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [2] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [2] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [2] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [2] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [2] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [2] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [2] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [2] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [2] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [2] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [2] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [2] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [2] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [2] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [2] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [2] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [2] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [2] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [2] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [2] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [2] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [2] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [2] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [2] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [2] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [2] [1] | mathOperator | Element (Global)

### 2.3.62 LogicSingle Class Mapping

The UML/XSD Mapping for the "LogicSingle" Class is given in Table 2.3.62.

Table 2.3.62 UML/XSD Mapping for the "LogicSingle" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
LogicSingle | Core | Container [ Sequence ] | - N/A - | LogicSingle.Type | ComplexType
and | Attribute | Logic1toMany | XOR [1] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1] [1] | match | Element (Global)
index | Attribute | Index | XOR [1] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1] [1] | mathOperator | Element (Global)

### 2.3.63 LookupOutcomeValue Class Mapping

The UML/XSD Mapping for the "LookupOutcomeValue" Class is given in Table 2.3.63.

Table 2.3.63 UML/XSD Mapping for the "LookupOutcomeValue" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
LookupOutcomeValue | Core | Container [ Sequence ] | - N/A - | LookupOutcomeValue.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
and | Attribute | Logic1toMany | XOR [1] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1] [1] | match | Element (Global)
index | Attribute | Index | XOR [1] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1] [1] | mathOperator | Element (Global)

### 2.3.64 Mapping Class Mapping

The UML/XSD Mapping for the "Mapping" Class is given in Table 2.3.64.

Table 2.3.64 UML/XSD Mapping for the "Mapping" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Mapping | Core | Container [ Sequence ] | - N/A - | Mapping.Type | ComplexType
lowerBound | Characteristic | PT: Double | [0..1] | lowerBound | Attribute (Global)
upperBound | Characteristic | PT: Double | [0..1] | upperBound | Attribute (Global)
defaultValue | Characteristic | PT: Double | [0..1] | defaultValue | Attribute (Global)
mapEntry | Attribute | DT: MapEntry (PT: Empty) | [1.. *] | mapEntry | Element (Global)

### 2.3.65 MatchInteraction Class Mapping

The UML/XSD Mapping for the "MatchInteraction" Class is given in Table 2.3.65.

Table 2.3.65 UML/XSD Mapping for the "MatchInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
MatchInteraction | Core | Container [ Sequence ] | - N/A - | MatchInteraction.Type | ComplexType
shuffle | Characteristic | PT: Boolean | [0..1] | shuffle | Attribute (Global)
maxAssociations | Characteristic | PT: NonNegativeInteger | [0..1] | maxAssociations | Attribute (Global)
minAssociations | Characteristic | PT: NonNegativeInteger | [0..1] | minAssociations | Attribute (Global)
simpleMatchSet | Attribute | SimpleMatchSet | [2] | simpleMatchSet | Element (Global)

### 2.3.66 MatchTable Class Mapping

The UML/XSD Mapping for the "MatchTable" Class is given in Table 2.3.66.

Table 2.3.66 UML/XSD Mapping for the "MatchTable" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
MatchTable | Core | Container [ Sequence ] | - N/A - | MatchTable.Type | ComplexType
defaultValue | Characteristic | PT: String | [0..1] | defaultValue | Attribute (Global)
matchTableEntry | Attribute | DT: MatchTableEntry (PT: Empty) | [1.. *] | matchTableEntry | Element (Global)

### 2.3.67 MathOperator Class Mapping

The UML/XSD Mapping for the "MathOperator" Class is given in Table 2.3.67.

Table 2.3.67 UML/XSD Mapping for the "MathOperator" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
MathOperator | Core | Container [ Sequence ] | - N/A - | MathOperator.Type | ComplexType
name | Characteristic | [ Enumeration (MathOperatorName) ] | [1] | name | Attribute (Global)
and | Attribute | Logic1toMany | XOR [1.. *] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1.. *] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1.. *] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1.. *] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1.. *] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1.. *] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1.. *] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1.. *] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1.. *] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1.. *] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1.. *] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1.. *] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1.. *] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1.. *] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1.. *] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1.. *] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1.. *] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1.. *] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1.. *] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1.. *] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1.. *] [1] | match | Element (Global)
index | Attribute | Index | XOR [1.. *] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1.. *] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1.. *] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1.. *] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1.. *] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1.. *] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1.. *] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1.. *] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1.. *] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1.. *] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1.. *] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1.. *] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1.. *] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1.. *] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1.. *] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1.. *] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1.. *] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1.. *] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1.. *] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1.. *] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1.. *] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1.. *] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1.. *] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1.. *] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1.. *] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1.. *] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1.. *] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1.. *] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1.. *] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1.. *] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1.. *] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1.. *] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1.. *] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1.. *] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1.. *] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1.. *] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1.. *] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1.. *] [1] | mathOperator | Element (Global)

### 2.3.68 MediaInteraction Class Mapping

The UML/XSD Mapping for the "MediaInteraction" Class is given in Table 2.3.68.

Table 2.3.68 UML/XSD Mapping for the "MediaInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
MediaInteraction | Core | Container [ Selection ] | - N/A - | MediaInteraction.Type | ComplexType
autostart | Characteristic | PT: Boolean | [1] | autostart | Attribute (Global)
minPlays | Characteristic | PT: NonNegativeInteger | [0..1] | minPlays | Attribute (Global)
maxPlays | Characteristic | PT: NonNegativeInteger | [0..1] | maxPlays | Attribute (Global)
loop | Characteristic | PT: Boolean | [0..1] | loop | Attribute (Global)
coords | Characteristic | DT: Coords (PT: NormalizedString) | [0..1] | coords | Attribute (Global)
object | Attribute | Object | [1] | object | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | [1] | audio | Element (Global)
video | Attribute | [ Imported (HTML5) ] | [1] | video | Element (Global)

### 2.3.69 ModalFeedback Class Mapping

The UML/XSD Mapping for the "ModalFeedback" Class is given in Table 2.3.69.

Table 2.3.69 UML/XSD Mapping for the "ModalFeedback" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
ModalFeedback | Core | Container [ Sequence ] | - N/A - | ModalFeedback.Type | ComplexType
outcomeIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | outcomeIdentifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [1] | showHide | Attribute (Global)
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
title | Characteristic | PT: NormalizedString | [0..1] | title | Attribute (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
hottext | Attribute | HotText | XOR [0.. *] [1] | hottext | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [0.. *] [1] | templateBlock | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)
stylesheet | Attribute | DT: StyleSheet (PT: Empty) | [0.. *] | stylesheet | Element (Global)
apipAccessibility | Attribute | [ Imported (APIPAccessibility) ] | [0..1] | apipAccessibility | Element (Global)

### 2.3.70 NumericLogic1toMany Class Mapping

The UML/XSD Mapping for the "NumericLogic1toMany" Class is given in Table 2.3.70.

Table 2.3.70 UML/XSD Mapping for the "NumericLogic1toMany" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
NumericLogic1toMany | Core | Container [ Sequence ] | - N/A - | NumericLogic1toMany.Type | ComplexType
sum | Attribute | NumericLogic1toMany | XOR [1.. *] [1] | sum | Element (Global)
subtract | Attribute | LogicPair | XOR [1.. *] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1.. *] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1.. *] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1.. *] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1.. *] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1.. *] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberSelected | Element (Global)
null | Attribute | PT: Empty | XOR [1.. *] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1.. *] [1] | delete | Element (Global)
index | Attribute | Index | XOR [1.. *] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1.. *] [1] | power | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1.. *] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1.. *] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1.. *] [1] | default | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1.. *] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1.. *] [1] | integerModulus | Element (Global)
product | Attribute | Logic1toMany | XOR [1.. *] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1.. *] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1.. *] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1.. *] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1.. *] [1] | randomInteger | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1.. *] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1.. *] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1.. *] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1.. *] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1.. *] [1] | integerToFloat | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1.. *] [1] | baseValue | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1.. *] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1.. *] [1] | mapResponse | Element (Global)
repeat | Attribute | Repeat | XOR [1.. *] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1.. *] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1.. *] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1.. *] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1.. *] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1.. *] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1.. *] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1.. *] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1.. *] [1] | mathOperator | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1.. *] [1] | randomFloat | Element (Global)

### 2.3.71 OUL Class Mapping

The UML/XSD Mapping for the "OUL" Class is given in Table 2.3.71.

Table 2.3.71 UML/XSD Mapping for the "OUL" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
OUL | Core | Container [ Sequence ] | - N/A - | OUL.Type | ComplexType
li | Attribute | LI | [0.. *] | li | Element (Global)

### 2.3.72 Object Class Mapping

The UML/XSD Mapping for the "Object" Class is given in Table 2.3.72.

Table 2.3.72 UML/XSD Mapping for the "Object" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Object | Core | Container [ Sequence ] | - N/A - | Object.Type | ComplexType
data | Characteristic | PT: String | [1] | data | Attribute (Global)
type | Characteristic | DT: MimeType (PT: NormalizedString) | [1] | type | Attribute (Global)
width | Characteristic | DT: Length (PT: String) | [0..1] | width | Attribute (Global)
height | Characteristic | DT: Length (PT: String) | [0..1] | height | Attribute (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
param | Attribute | DT: Param (PT: Empty) | XOR [0.. *] [1] | param | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.73 OrderInteraction Class Mapping

The UML/XSD Mapping for the "OrderInteraction" Class is given in Table 2.3.73.

Table 2.3.73 UML/XSD Mapping for the "OrderInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
OrderInteraction | Core | Container [ Sequence ] | - N/A - | OrderInteraction.Type | ComplexType
shuffle | Characteristic | PT: Boolean | [0..1] | shuffle | Attribute (Global)
minChoices | Characteristic | PT: NonNegativeInteger | [0..1] | minChoices | Attribute (Global)
maxChoices | Characteristic | PT: NonNegativeInteger | [0..1] | maxChoices | Attribute (Global)
orientation | Characteristic | [ Enumeration (Orientation) ] | [0..1] | orientation | Attribute (Global)
simpleChoice | Attribute | SimpleChoice | [1.. *] | simpleChoice | Element (Global)

### 2.3.74 Ordering Class Mapping

The UML/XSD Mapping for the "Ordering" Class is given in Table 2.3.74.

Table 2.3.74 UML/XSD Mapping for the "Ordering" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Ordering | Core | Container [ Sequence ] | - N/A - | Ordering.Type | ComplexType
shuffle | Characteristic | PT: Boolean | [0..1] | shuffle | Attribute (Global)
extension | Characteristic | PT: Namespace | [0..1] | extension | Attribute (Global)
extensions | Attribute | PT: NamespaceLax | [0.. *] | extensions | Element (Global)

### 2.3.75 OutcomeCondition Class Mapping

The UML/XSD Mapping for the "OutcomeCondition" Class is given in Table 2.3.75.

Table 2.3.75 UML/XSD Mapping for the "OutcomeCondition" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
OutcomeCondition | Core | Container [ Sequence ] | - N/A - | OutcomeCondition.Type | ComplexType
outcomeIf | Attribute | OutcomeIf | [1] | outcomeIf | Element (Global)
outcomeElseIf | Attribute | OutcomeIf | [0.. *] | outcomeElseIf | Element (Global)
outcomeElse | Attribute | OutcomeElse | [0..1] | outcomeElse | Element (Global)

### 2.3.76 OutcomeElse Class Mapping

The UML/XSD Mapping for the "OutcomeElse" Class is given in Table 2.3.76.

Table 2.3.76 UML/XSD Mapping for the "OutcomeElse" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
OutcomeElse | Core | Container [ Sequence ] | - N/A - | OutcomeElse.Type | ComplexType
lookupOutcomeValue | Attribute | LookupOutcomeValue | XOR [0.. *] [1] | lookupOutcomeValue | Element (Global)
outcomeProcessingFragment | Attribute | OutcomeProcessingFragment | XOR [0.. *] [1] | outcomeProcessingFragment | Element (Global)
setOutcomeValue | Attribute | SetValue | XOR [0.. *] [1] | setOutcomeValue | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
exitTest | Attribute | PT: Empty | XOR [0.. *] [1] | exitTest | Element (Global)
outcomeCondition | Attribute | OutcomeCondition | XOR [0.. *] [1] | outcomeCondition | Element (Global)

### 2.3.77 OutcomeIf Class Mapping

The UML/XSD Mapping for the "OutcomeIf" Class is given in Table 2.3.77.

Table 2.3.77 UML/XSD Mapping for the "OutcomeIf" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
OutcomeIf | Core | Container [ Sequence ] | - N/A - | OutcomeIf.Type | ComplexType
and | Attribute | Logic1toMany | XOR [1] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1] [1] | match | Element (Global)
index | Attribute | Index | XOR [1] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1] [1] | mathOperator | Element (Global)
lookupOutcomeValue | Attribute | LookupOutcomeValue | XOR [0.. *] [1] | lookupOutcomeValue | Element (Global)
outcomeProcessingFragment | Attribute | OutcomeProcessingFragment | XOR [0.. *] [1] | outcomeProcessingFragment | Element (Global)
setOutcomeValue | Attribute | SetValue | XOR [0.. *] [1] | setOutcomeValue | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
exitTest | Attribute | PT: Empty | XOR [0.. *] [1] | exitTest | Element (Global)
outcomeCondition | Attribute | OutcomeCondition | XOR [0.. *] [1] | outcomeCondition | Element (Global)

### 2.3.78 OutcomeProcessing Class Mapping

The UML/XSD Mapping for the "OutcomeProcessing" Class is given in Table 2.3.78.

Table 2.3.78 UML/XSD Mapping for the "OutcomeProcessing" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
OutcomeProcessing | Core | Container [ Sequence ] | - N/A - | OutcomeProcessing.Type | ComplexType
lookupOutcomeValue | Attribute | LookupOutcomeValue | XOR [0.. *] [1] | lookupOutcomeValue | Element (Global)
outcomeProcessingFragment | Attribute | OutcomeProcessingFragment | XOR [0.. *] [1] | outcomeProcessingFragment | Element (Global)
setOutcomeValue | Attribute | SetValue | XOR [0.. *] [1] | setOutcomeValue | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
exitTest | Attribute | PT: Empty | XOR [0.. *] [1] | exitTest | Element (Global)
outcomeCondition | Attribute | OutcomeCondition | XOR [0.. *] [1] | outcomeCondition | Element (Global)

### 2.3.79 OutcomeProcessingFragment Class Mapping

The UML/XSD Mapping for the "OutcomeProcessingFragment" Class is given in Table 2.3.79.

Table 2.3.79 UML/XSD Mapping for the "OutcomeProcessingFragment" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
OutcomeProcessingFragment | Core | Container [ Sequence ] | - N/A - | OutcomeProcessingFragment.Type | ComplexType
lookupOutcomeValue | Attribute | LookupOutcomeValue | XOR [0.. *] [1] | lookupOutcomeValue | Element (Global)
outcomeProcessingFragment | Attribute | OutcomeProcessingFragment | XOR [0.. *] [1] | outcomeProcessingFragment | Element (Global)
setOutcomeValue | Attribute | SetValue | XOR [0.. *] [1] | setOutcomeValue | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
exitTest | Attribute | PT: Empty | XOR [0.. *] [1] | exitTest | Element (Global)
outcomeCondition | Attribute | OutcomeCondition | XOR [0.. *] [1] | outcomeCondition | Element (Global)

### 2.3.80 PatternMatch Class Mapping

The UML/XSD Mapping for the "PatternMatch" Class is given in Table 2.3.80.

Table 2.3.80 UML/XSD Mapping for the "PatternMatch" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
PatternMatch | Core | Container [ Sequence ] | - N/A - | PatternMatch.Type | ComplexType
pattern | Characteristic | [ Union (StringOrVariableRef) ] | [1] | pattern | Attribute (Global)
and | Attribute | Logic1toMany | XOR [1] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1] [1] | match | Element (Global)
index | Attribute | Index | XOR [1] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1] [1] | mathOperator | Element (Global)

### 2.3.81 PositionObjectInteraction Class Mapping

The UML/XSD Mapping for the "PositionObjectInteraction" Class is given in Table 2.3.81.

Table 2.3.81 UML/XSD Mapping for the "PositionObjectInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
PositionObjectInteraction | Core | Container [ Sequence ] | - N/A - | PositionObjectInteraction.Type | ComplexType
centerPoint | Characteristic | [ List (IntegerList) ] | [0..1] | centerPoint | Attribute (Global)
minChoices | Characteristic | PT: NonNegativeInteger | [0..1] | minChoices | Attribute (Global)
maxChoices | Characteristic | PT: NonNegativeInteger | [0..1] | maxChoices | Attribute (Global)
object | Attribute | Object | [1] | object | Element (Global)

### 2.3.82 PositionObjectStage Class Mapping

The UML/XSD Mapping for the "PositionObjectStage" Class is given in Table 2.3.82.

Table 2.3.82 UML/XSD Mapping for the "PositionObjectStage" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
PositionObjectStage | Core | Container [ Sequence ] | - N/A - | PositionObjectStage.Type | ComplexType
id | Characteristic | DT: UniqueIdentifier (PT: ID) | [0..1] | id | Attribute (Global)
object | Attribute | Object | [1] | object | Element (Global)
positionObjectInteraction | Attribute | PositionObjectInteraction | [1.. *] | positionObjectInteraction | Element (Global)

### 2.3.83 Prompt Class Mapping

The UML/XSD Mapping for the "Prompt" Class is given in Table 2.3.83.

Table 2.3.83 UML/XSD Mapping for the "Prompt" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Prompt | Core | Container [ Sequence ] | - N/A - | Prompt.Type | ComplexType
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.84 Q Class Mapping

The UML/XSD Mapping for the "Q" Class is given in Table 2.3.84.

Table 2.3.84 UML/XSD Mapping for the "Q" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Q | Core | Container [ Sequence ] | - N/A - | Q.Type | ComplexType
cite | Characteristic | PT: AnyURI | [0..1] | cite | Attribute (Global)
textEntryInteraction | Attribute | TextEntryInteraction | XOR [0.. *] [1] | textEntryInteraction | Element (Global)
hottext | Attribute | HotText | XOR [0.. *] [1] | hottext | Element (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
gap | Attribute | Gap | XOR [0.. *] [1] | gap | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
inlineChoiceInteraction | Attribute | InlineChoiceInteraction | XOR [0.. *] [1] | inlineChoiceInteraction | Element (Global)
endAttemptInteraction | Attribute | EndAttemptInteraction | XOR [0.. *] [1] | endAttemptInteraction | Element (Global)
customInteraction | Attribute | CustomInteraction | XOR [0.. *] [1] | customInteraction | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.85 Repeat Class Mapping

The UML/XSD Mapping for the "Repeat" Class is given in Table 2.3.85.

Table 2.3.85 UML/XSD Mapping for the "Repeat" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Repeat | Core | Container [ Sequence ] | - N/A - | Repeat.Type | ComplexType
numberRepeats | Characteristic | [ Union (IntOrIdentifier) ] | [1] | numberRepeats | Attribute (Global)
and | Attribute | Logic1toMany | XOR [1.. *] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1.. *] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1.. *] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1.. *] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1.. *] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1.. *] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1.. *] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1.. *] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1.. *] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1.. *] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1.. *] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1.. *] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1.. *] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1.. *] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1.. *] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1.. *] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1.. *] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1.. *] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1.. *] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1.. *] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1.. *] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1.. *] [1] | match | Element (Global)
index | Attribute | Index | XOR [1.. *] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1.. *] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1.. *] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1.. *] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1.. *] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1.. *] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1.. *] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1.. *] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1.. *] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1.. *] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1.. *] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1.. *] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1.. *] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1.. *] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1.. *] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1.. *] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1.. *] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1.. *] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1.. *] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1.. *] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1.. *] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1.. *] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1.. *] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1.. *] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1.. *] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1.. *] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1.. *] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1.. *] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1.. *] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1.. *] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1.. *] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1.. *] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1.. *] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1.. *] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1.. *] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1.. *] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1.. *] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1.. *] [1] | mathOperator | Element (Global)

### 2.3.86 ResponseCondition Class Mapping

The UML/XSD Mapping for the "ResponseCondition" Class is given in Table 2.3.86.

Table 2.3.86 UML/XSD Mapping for the "ResponseCondition" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
ResponseCondition | Core | Container [ Sequence ] | - N/A - | ResponseCondition.Type | ComplexType
responseIf | Attribute | ResponseIf | [1] | responseIf | Element (Global)
responseElseIf | Attribute | ResponseIf | [0.. *] | responseElseIf | Element (Global)
responseElse | Attribute | ResponseElse | [0..1] | responseElse | Element (Global)

### 2.3.87 ResponseDeclaration Class Mapping

The UML/XSD Mapping for the "ResponseDeclaration" Class is given in Table 2.3.87.

Table 2.3.87 UML/XSD Mapping for the "ResponseDeclaration" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
ResponseDeclaration | Core | Container [ Sequence ] | - N/A - | ResponseDeclaration.Type | ComplexType
identifier | Characteristic | DT: UniqueIdentifier (PT: ID) | [1] | identifier | Attribute (Global)
cardinality | Characteristic | [ Enumeration (Cardinality) ] | [1] | cardinality | Attribute (Global)
baseType | Characteristic | [ Enumeration (BaseType) ] | [0..1] | baseType | Attribute (Global)
defaultValue | Attribute | DefaultValue | [0..1] | defaultValue | Element (Global)
correctResponse | Attribute | CorrectResponse | [0..1] | correctResponse | Element (Global)
mapping | Attribute | Mapping | [0..1] | mapping | Element (Global)
areaMapping | Attribute | AreaMapping | [0..1] | areaMapping | Element (Global)

### 2.3.88 ResponseElse Class Mapping

The UML/XSD Mapping for the "ResponseElse" Class is given in Table 2.3.88.

Table 2.3.88 UML/XSD Mapping for the "ResponseElse" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
ResponseElse | Core | Container [ Sequence ] | - N/A - | ResponseElse.Type | ComplexType
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
responseCondition | Attribute | ResponseCondition | XOR [0.. *] [1] | responseCondition | Element (Global)
responseProcessingFragment | Attribute | ResponseProcessingFragment | XOR [0.. *] [1] | responseProcessingFragment | Element (Global)
setOutcomeValue | Attribute | SetValue | XOR [0.. *] [1] | setOutcomeValue | Element (Global)
exitResponse | Attribute | PT: Empty | XOR [0.. *] [1] | exitResponse | Element (Global)
lookupOutcomeValue | Attribute | LookupOutcomeValue | XOR [0.. *] [1] | lookupOutcomeValue | Element (Global)

### 2.3.89 ResponseIf Class Mapping

The UML/XSD Mapping for the "ResponseIf" Class is given in Table 2.3.89.

Table 2.3.89 UML/XSD Mapping for the "ResponseIf" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
ResponseIf | Core | Container [ Sequence ] | - N/A - | ResponseIf.Type | ComplexType
and | Attribute | Logic1toMany | XOR [1] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1] [1] | match | Element (Global)
index | Attribute | Index | XOR [1] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1] [1] | mathOperator | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
responseCondition | Attribute | ResponseCondition | XOR [0.. *] [1] | responseCondition | Element (Global)
responseProcessingFragment | Attribute | ResponseProcessingFragment | XOR [0.. *] [1] | responseProcessingFragment | Element (Global)
setOutcomeValue | Attribute | SetValue | XOR [0.. *] [1] | setOutcomeValue | Element (Global)
exitResponse | Attribute | PT: Empty | XOR [0.. *] [1] | exitResponse | Element (Global)
lookupOutcomeValue | Attribute | LookupOutcomeValue | XOR [0.. *] [1] | lookupOutcomeValue | Element (Global)

### 2.3.90 ResponseProcessingFragment Class Mapping

The UML/XSD Mapping for the "ResponseProcessingFragment" Class is given in Table 2.3.90.

Table 2.3.90 UML/XSD Mapping for the "ResponseProcessingFragment" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
ResponseProcessingFragment | Core | Container [ Sequence ] | - N/A - | ResponseProcessingFragment.Type | ComplexType
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
responseCondition | Attribute | ResponseCondition | XOR [0.. *] [1] | responseCondition | Element (Global)
responseProcessingFragment | Attribute | ResponseProcessingFragment | XOR [0.. *] [1] | responseProcessingFragment | Element (Global)
setOutcomeValue | Attribute | SetValue | XOR [0.. *] [1] | setOutcomeValue | Element (Global)
exitResponse | Attribute | PT: Empty | XOR [0.. *] [1] | exitResponse | Element (Global)
lookupOutcomeValue | Attribute | LookupOutcomeValue | XOR [0.. *] [1] | lookupOutcomeValue | Element (Global)

### 2.3.91 RoundTo Class Mapping

The UML/XSD Mapping for the "RoundTo" Class is given in Table 2.3.91.

Table 2.3.91 UML/XSD Mapping for the "RoundTo" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
RoundTo | Core | Container [ Sequence ] | - N/A - | RoundTo.Type | ComplexType
roundingMode | Characteristic | [ Enumeration (RoundingMode) ] | [1] | roundingMode | Attribute (Global)
figures | Characteristic | [ Union (IntegerOrVariableRef) ] | [1] | figures | Attribute (Global)
and | Attribute | Logic1toMany | XOR [1] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1] [1] | match | Element (Global)
index | Attribute | Index | XOR [1] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1] [1] | mathOperator | Element (Global)

### 2.3.92 RubricBlock Class Mapping

The UML/XSD Mapping for the "RubricBlock" Class is given in Table 2.3.92.

Table 2.3.92 UML/XSD Mapping for the "RubricBlock" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
RubricBlock | Core | Container [ Sequence ] | - N/A - | RubricBlock.Type | ComplexType
use | Characteristic | PT: NormalizedString | [0..1] | use | Attribute (Global)
view | Characteristic | [ Enumeration List (View) ] | [1] | view | Attribute (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
templateBlock | Attribute | RubricBlockTemplateBlock | XOR [0.. *] [1] | templateBlock | Element (Local)
templateInline | Attribute | RubricBlockTemplateInline | XOR [0.. *] [1] | templateInline | Element (Local)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
stylesheet | Attribute | DT: StyleSheet (PT: Empty) | [0.. *] | stylesheet | Element (Global)
apipAccessibility | Attribute | [ Imported (APIPAccessibility) ] | [0..1] | apipAccessibility | Element (Global)

### 2.3.93 RubricBlockTemplateBlock Class Mapping

The UML/XSD Mapping for the "RubricBlockTemplateBlock" Class is given in Table 2.3.93.

Table 2.3.93 UML/XSD Mapping for the "RubricBlockTemplateBlock" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
RubricBlockTemplateBlock | Core | Container [ Sequence ] | - N/A - | RubricBlockTemplateBlock.Type | ComplexType
templateIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | templateIdentifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [0..1] | showHide | Attribute (Global)
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
templateBlock | Attribute | RubricBlockTemplateBlock | XOR [0.. *] [1] | templateBlock | Element (Local)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
stylesheet | Attribute | DT: StyleSheet (PT: Empty) | [0.. *] | stylesheet | Element (Global)
apipAccessibility | Attribute | [ Imported (APIPAccessibility) ] | [0..1] | apipAccessibility | Element (Global)

### 2.3.94 RubricBlockTemplateInline Class Mapping

The UML/XSD Mapping for the "RubricBlockTemplateInline" Class is given in Table 2.3.94.

Table 2.3.94 UML/XSD Mapping for the "RubricBlockTemplateInline" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
RubricBlockTemplateInline | Core | Container [ Sequence ] | - N/A - | RubricBlockTemplateInline.Type | ComplexType
templateIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | templateIdentifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [0..1] | showHide | Attribute (Global)
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
templateInline | Attribute | RubricBlockTemplateInline | XOR [0.. *] [1] | templateInline | Element (Local)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)

### 2.3.95 SelectPointInteraction Class Mapping

The UML/XSD Mapping for the "SelectPointInteraction" Class is given in Table 2.3.95.

Table 2.3.95 UML/XSD Mapping for the "SelectPointInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
SelectPointInteraction | Core | Container [ Sequence ] | - N/A - | SelectPointInteraction.Type | ComplexType
minChoices | Characteristic | PT: NonNegativeInteger | [0..1] | minChoices | Attribute (Global)
maxChoices | Characteristic | PT: NonNegativeInteger | [0..1] | maxChoices | Attribute (Global)
object | Attribute | Object | [1] | object | Element (Global)

### 2.3.96 Selection Class Mapping

The UML/XSD Mapping for the "Selection" Class is given in Table 2.3.96.

Table 2.3.96 UML/XSD Mapping for the "Selection" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Selection | Core | Container [ Sequence ] | - N/A - | Selection.Type | ComplexType
select | Characteristic | PT: Int | [1] | select | Attribute (Global)
withReplacement | Characteristic | PT: Boolean | [0..1] | withReplacement | Attribute (Global)
extension | Characteristic | PT: Namespace | [0..1] | extension | Attribute (Global)
extensions | Attribute | PT: NamespaceLax | [0.. *] | extensions | Element (Global)

### 2.3.97 SetValue Class Mapping

The UML/XSD Mapping for the "SetValue" Class is given in Table 2.3.97.

Table 2.3.97 UML/XSD Mapping for the "SetValue" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
SetValue | Core | Container [ Sequence ] | - N/A - | SetValue.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
and | Attribute | Logic1toMany | XOR [1] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1] [1] | match | Element (Global)
index | Attribute | Index | XOR [1] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1] [1] | mathOperator | Element (Global)

### 2.3.98 SimpleAssociableChoice Class Mapping

The UML/XSD Mapping for the "SimpleAssociableChoice" Class is given in Table 2.3.98.

Table 2.3.98 UML/XSD Mapping for the "SimpleAssociableChoice" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
SimpleAssociableChoice | Core | Container [ Sequence ] | - N/A - | SimpleAssociableChoice.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
fixed | Characteristic | PT: Boolean | [0..1] | fixed | Attribute (Global)
templateIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | templateIdentifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [0..1] | showHide | Attribute (Global)
matchGroup | Characteristic | [ List (IdentifierList) ] | [0..1] | matchGroup | Attribute (Global)
matchMax | Characteristic | PT: NonNegativeInteger | [1] | matchMax | Attribute (Global)
matchMin | Characteristic | PT: NonNegativeInteger | [0..1] | matchMin | Attribute (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
feedbackBlock | Attribute | FeedbackBlock | XOR [0.. *] [1] | feedbackBlock | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [0.. *] [1] | templateBlock | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.99 SimpleChoice Class Mapping

The UML/XSD Mapping for the "SimpleChoice" Class is given in Table 2.3.99.

Table 2.3.99 UML/XSD Mapping for the "SimpleChoice" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
SimpleChoice | Core | Container [ Sequence ] | - N/A - | SimpleChoice.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
fixed | Characteristic | PT: Boolean | [0..1] | fixed | Attribute (Global)
templateIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | templateIdentifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [0..1] | showHide | Attribute (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
feedbackBlock | Attribute | FeedbackBlock | XOR [0.. *] [1] | feedbackBlock | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [0.. *] [1] | templateBlock | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.100 SimpleMatchSet Class Mapping

The UML/XSD Mapping for the "SimpleMatchSet" Class is given in Table 2.3.100.

Table 2.3.100 UML/XSD Mapping for the "SimpleMatchSet" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
SimpleMatchSet | Core | Container [ Sequence ] | - N/A - | SimpleMatchSet.Type | ComplexType
id | Characteristic | DT: UniqueIdentifier (PT: ID) | [0..1] | id | Attribute (Global)
simpleAssociableChoice | Attribute | SimpleAssociableChoice | [0.. *] | simpleAssociableChoice | Element (Global)

### 2.3.101 SliderInteraction Class Mapping

The UML/XSD Mapping for the "SliderInteraction" Class is given in Table 2.3.101.

Table 2.3.101 UML/XSD Mapping for the "SliderInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
SliderInteraction | Core | Container [ Sequence ] | - N/A - | SliderInteraction.Type | ComplexType
lowerBound | Characteristic | DT: NonNegativeDouble (PT: Double) | [1] | lowerBound | Attribute (Global)
upperBound | Characteristic | DT: NonNegativeDouble (PT: Double) | [1] | upperBound | Attribute (Global)
step | Characteristic | DT: NonNegativeDouble (PT: Double) | [0..1] | step | Attribute (Global)
stepLabel | Characteristic | PT: Boolean | [0..1] | stepLabel | Attribute (Global)
orientation | Characteristic | [ Enumeration (Orientation) ] | [0..1] | orientation | Attribute (Global)
reverse | Characteristic | PT: Boolean | [0..1] | reverse | Attribute (Global)

### 2.3.102 StatsOperator Class Mapping

The UML/XSD Mapping for the "StatsOperator" Class is given in Table 2.3.102.

Table 2.3.102 UML/XSD Mapping for the "StatsOperator" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
StatsOperator | Core | Container [ Sequence ] | - N/A - | StatsOperator.Type | ComplexType
name | Characteristic | [ Enumeration (StatsOperatorName) ] | [1] | name | Attribute (Global)
and | Attribute | Logic1toMany | XOR [1] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1] [1] | match | Element (Global)
index | Attribute | Index | XOR [1] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1] [1] | mathOperator | Element (Global)

### 2.3.103 StimulusBody Class Mapping

The UML/XSD Mapping for the "StimulusBody" Class is given in Table 2.3.103.

Table 2.3.103 UML/XSD Mapping for the "StimulusBody" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
StimulusBody | Core | Container [ Sequence ] | - N/A - | StimulusBody.Type | ComplexType
positionObjectStage | Attribute | PositionObjectStage | XOR [1.. *] [1] | positionObjectStage | Element (Global)
customInteraction | Attribute | CustomInteraction | XOR [1.. *] [1] | customInteraction | Element (Global)
drawingInteraction | Attribute | DrawingInteraction | XOR [1.. *] [1] | drawingInteraction | Element (Global)
gapMatchInteraction | Attribute | GapMatchInteraction | XOR [1.. *] [1] | gapMatchInteraction | Element (Global)
matchInteraction | Attribute | MatchInteraction | XOR [1.. *] [1] | matchInteraction | Element (Global)
graphicGapMatchInteraction | Attribute | GraphicGapMatchInteraction | XOR [1.. *] [1] | graphicGapMatchInteraction | Element (Global)
hotspotInteraction | Attribute | HotspotInteraction | XOR [1.. *] [1] | hotspotInteraction | Element (Global)
graphicOrderInteraction | Attribute | GraphicOrderInteraction | XOR [1.. *] [1] | graphicOrderInteraction | Element (Global)
selectPointInteraction | Attribute | SelectPointInteraction | XOR [1.. *] [1] | selectPointInteraction | Element (Global)
graphicAssociateInteraction | Attribute | GraphicAssociateInteraction | XOR [1.. *] [1] | graphicAssociateInteraction | Element (Global)
sliderInteraction | Attribute | SliderInteraction | XOR [1.. *] [1] | sliderInteraction | Element (Global)
choiceInteraction | Attribute | ChoiceInteraction | XOR [1.. *] [1] | choiceInteraction | Element (Global)
mediaInteraction | Attribute | MediaInteraction | XOR [1.. *] [1] | mediaInteraction | Element (Global)
hottextInteraction | Attribute | HotTextInteraction | XOR [1.. *] [1] | hottextInteraction | Element (Global)
orderInteraction | Attribute | OrderInteraction | XOR [1.. *] [1] | orderInteraction | Element (Global)
extendedTextInteraction | Attribute | ExtendedTextInteraction | XOR [1.. *] [1] | extendedTextInteraction | Element (Global)
uploadInteraction | Attribute | UploadInteraction | XOR [1.. *] [1] | uploadInteraction | Element (Global)
associateInteraction | Attribute | AssociateInteraction | XOR [1.. *] [1] | associateInteraction | Element (Global)
feedbackBlock | Attribute | FeedbackBlock | XOR [1.. *] [1] | feedbackBlock | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [1.. *] [1] | templateBlock | Element (Global)
infoControl | Attribute | InfoControl | XOR [1.. *] [1] | infoControl | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [1.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [1.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [1.. *] [1] | xi:include | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)

### 2.3.104 StringMatch Class Mapping

The UML/XSD Mapping for the "StringMatch" Class is given in Table 2.3.104.

Table 2.3.104 UML/XSD Mapping for the "StringMatch" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
StringMatch | Core | Container [ Sequence ] | - N/A - | StringMatch.Type | ComplexType
caseSensitive | Characteristic | PT: Boolean | [1] | caseSensitive | Attribute (Global)
substring | Characteristic | PT: Boolean | [0..1] | substring | Attribute (Global)
and | Attribute | Logic1toMany | XOR [2] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [2] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [2] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [2] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [2] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [2] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [2] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [2] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [2] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [2] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [2] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [2] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [2] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [2] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [2] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [2] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [2] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [2] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [2] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [2] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [2] [1] | match | Element (Global)
index | Attribute | Index | XOR [2] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [2] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [2] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [2] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [2] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [2] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [2] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [2] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [2] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [2] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [2] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [2] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [2] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [2] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [2] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [2] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [2] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [2] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [2] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [2] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [2] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [2] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [2] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [2] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [2] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [2] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [2] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [2] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [2] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [2] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [2] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [2] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [2] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [2] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [2] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [2] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [2] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [2] [1] | mathOperator | Element (Global)

### 2.3.105 Substring Class Mapping

The UML/XSD Mapping for the "Substring" Class is given in Table 2.3.105.

Table 2.3.105 UML/XSD Mapping for the "Substring" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Substring | Core | Container [ Sequence ] | - N/A - | Substring.Type | ComplexType
caseSensitive | Characteristic | PT: Boolean | [1] | caseSensitive | Attribute (Global)
and | Attribute | Logic1toMany | XOR [2] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [2] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [2] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [2] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [2] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [2] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [2] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [2] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [2] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [2] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [2] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [2] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [2] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [2] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [2] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [2] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [2] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [2] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [2] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [2] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [2] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [2] [1] | match | Element (Global)
index | Attribute | Index | XOR [2] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [2] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [2] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [2] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [2] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [2] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [2] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [2] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [2] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [2] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [2] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [2] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [2] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [2] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [2] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [2] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [2] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [2] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [2] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [2] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [2] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [2] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [2] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [2] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [2] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [2] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [2] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [2] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [2] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [2] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [2] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [2] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [2] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [2] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [2] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [2] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [2] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [2] [1] | mathOperator | Element (Global)

### 2.3.106 TDH Class Mapping

The UML/XSD Mapping for the "TDH" Class is given in Table 2.3.106.

Table 2.3.106 UML/XSD Mapping for the "TDH" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TDH | Core | Container [ Sequence ] | - N/A - | TDH.Type | ComplexType
headers | Characteristic | [ List (IdentifierList) ] | [0..1] | headers | Attribute (Global)
scope | Characteristic | [ Enumeration (TableCellScope) ] | [0..1] | scope | Attribute (Global)
abbr | Characteristic | PT: String | [0..1] | abbr | Attribute (Global)
axis | Characteristic | PT: String | [0..1] | axis | Attribute (Global)
rowspan | Characteristic | PT: Int | [0..1] | rowspan | Attribute (Global)
colspan | Characteristic | PT: Int | [0..1] | colspan | Attribute (Global)
align | Characteristic | [ Enumeration (Align) ] | [0..1] | align | Attribute (Global)
valign | Characteristic | [ Enumeration (Valign) ] | [0..1] | valign | Attribute (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
feedbackBlock | Attribute | FeedbackBlock | XOR [0.. *] [1] | feedbackBlock | Element (Global)
hottext | Attribute | HotText | XOR [0.. *] [1] | hottext | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [0.. *] [1] | templateBlock | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
textEntryInteraction | Attribute | TextEntryInteraction | XOR [0.. *] [1] | textEntryInteraction | Element (Global)
inlineChoiceInteraction | Attribute | InlineChoiceInteraction | XOR [0.. *] [1] | inlineChoiceInteraction | Element (Global)
endAttemptInteraction | Attribute | EndAttemptInteraction | XOR [0.. *] [1] | endAttemptInteraction | Element (Global)
customInteraction | Attribute | CustomInteraction | XOR [0.. *] [1] | customInteraction | Element (Global)
drawingInteraction | Attribute | DrawingInteraction | XOR [0.. *] [1] | drawingInteraction | Element (Global)
gapMatchInteraction | Attribute | GapMatchInteraction | XOR [0.. *] [1] | gapMatchInteraction | Element (Global)
matchInteraction | Attribute | MatchInteraction | XOR [0.. *] [1] | matchInteraction | Element (Global)
graphicGapMatchInteraction | Attribute | GraphicGapMatchInteraction | XOR [0.. *] [1] | graphicGapMatchInteraction | Element (Global)
hotspotInteraction | Attribute | HotspotInteraction | XOR [0.. *] [1] | hotspotInteraction | Element (Global)
graphicOrderInteraction | Attribute | GraphicOrderInteraction | XOR [0.. *] [1] | graphicOrderInteraction | Element (Global)
selectPointInteraction | Attribute | SelectPointInteraction | XOR [0.. *] [1] | selectPointInteraction | Element (Global)
graphicAssociateInteraction | Attribute | GraphicAssociateInteraction | XOR [0.. *] [1] | graphicAssociateInteraction | Element (Global)
sliderInteraction | Attribute | SliderInteraction | XOR [0.. *] [1] | sliderInteraction | Element (Global)
choiceInteraction | Attribute | ChoiceInteraction | XOR [0.. *] [1] | choiceInteraction | Element (Global)
mediaInteraction | Attribute | MediaInteraction | XOR [0.. *] [1] | mediaInteraction | Element (Global)
hottextInteraction | Attribute | HotTextInteraction | XOR [0.. *] [1] | hottextInteraction | Element (Global)
orderInteraction | Attribute | OrderInteraction | XOR [0.. *] [1] | orderInteraction | Element (Global)
extendedTextInteraction | Attribute | ExtendedTextInteraction | XOR [0.. *] [1] | extendedTextInteraction | Element (Global)
uploadInteraction | Attribute | UploadInteraction | XOR [0.. *] [1] | uploadInteraction | Element (Global)
associateInteraction | Attribute | AssociateInteraction | XOR [0.. *] [1] | associateInteraction | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.107 TR Class Mapping

The UML/XSD Mapping for the "TR" Class is given in Table 2.3.107.

Table 2.3.107 UML/XSD Mapping for the "TR" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TR | Core | Container [ Sequence ] | - N/A - | TR.Type | ComplexType
td | Attribute | TDH | XOR [1.. *] [1] | td | Element (Global)
th | Attribute | TDH | XOR [1.. *] [1] | th | Element (Global)

### 2.3.108 Table Class Mapping

The UML/XSD Mapping for the "Table" Class is given in Table 2.3.108.

Table 2.3.108 UML/XSD Mapping for the "Table" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Table | Core | Container [ Sequence ] | - N/A - | Table.Type | ComplexType
summary | Characteristic | PT: String | [0..1] | summary | Attribute (Global)
caption | Attribute | Caption | [0..1] | caption | Element (Global)
col | Attribute | Col | [0.. *] | col | Element (Global)
colgroup | Attribute | ColGroup | [0.. *] | colgroup | Element (Global)
thead | Attribute | TablePart | [0..1] | thead | Element (Global)
tfoot | Attribute | TablePart | [0..1] | tfoot | Element (Global)
tbody | Attribute | TablePart | [1.. *] | tbody | Element (Global)

### 2.3.109 TablePart Class Mapping

The UML/XSD Mapping for the "TablePart" Class is given in Table 2.3.109.

Table 2.3.109 UML/XSD Mapping for the "TablePart" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TablePart | Core | Container [ Sequence ] | - N/A - | TablePart.Type | ComplexType
tr | Attribute | TR | [1.. *] | tr | Element (Global)

### 2.3.110 TemplateBlock Class Mapping

The UML/XSD Mapping for the "TemplateBlock" Class is given in Table 2.3.110.

Table 2.3.110 UML/XSD Mapping for the "TemplateBlock" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TemplateBlock | Core | Container [ Sequence ] | - N/A - | TemplateBlock.Type | ComplexType
templateIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | templateIdentifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [0..1] | showHide | Attribute (Global)
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [0.. *] [1] | templateBlock | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
feedbackBlock | Attribute | TemplateBlockFeedbackBlock | XOR [0.. *] [1] | feedbackBlock | Element (Local)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
stylesheet | Attribute | DT: StyleSheet (PT: Empty) | [0.. *] | stylesheet | Element (Global)
apipAccessibility | Attribute | [ Imported (APIPAccessibility) ] | [0..1] | apipAccessibility | Element (Global)

### 2.3.111 TemplateBlockFeedbackBlock Class Mapping

The UML/XSD Mapping for the "TemplateBlockFeedbackBlock" Class is given in Table 2.3.111.

Table 2.3.111 UML/XSD Mapping for the "TemplateBlockFeedbackBlock" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TemplateBlockFeedbackBlock | Core | Container [ Sequence ] | - N/A - | TemplateBlockFeedbackBlock.Type | ComplexType
outcomeIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | outcomeIdentifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [0..1] | showHide | Attribute (Global)
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [0.. *] [1] | templateBlock | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
feedbackBlock | Attribute | TemplateBlockFeedbackBlock | XOR [0.. *] [1] | feedbackBlock | Element (Local)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
stylesheet | Attribute | DT: StyleSheet (PT: Empty) | [0.. *] | stylesheet | Element (Global)
apipAccessibility | Attribute | [ Imported (APIPAccessibility) ] | [1] | apipAccessibility | Element (Global)

### 2.3.112 TemplateCondition Class Mapping

The UML/XSD Mapping for the "TemplateCondition" Class is given in Table 2.3.112.

Table 2.3.112 UML/XSD Mapping for the "TemplateCondition" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TemplateCondition | Core | Container [ Sequence ] | - N/A - | TemplateCondition.Type | ComplexType
templateIf | Attribute | TemplateIf | [1] | templateIf | Element (Global)
templateElseIf | Attribute | TemplateIf | [0.. *] | templateElseIf | Element (Global)
templateElse | Attribute | TemplateElse | [0..1] | templateElse | Element (Global)

### 2.3.113 TemplateConstraint Class Mapping

The UML/XSD Mapping for the "TemplateConstraint" Class is given in Table 2.3.113.

Table 2.3.113 UML/XSD Mapping for the "TemplateConstraint" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TemplateConstraint | Core | Container [ Sequence ] | - N/A - | TemplateConstraint.Type | ComplexType
and | Attribute | Logic1toMany | XOR [1] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1] [1] | match | Element (Global)
index | Attribute | Index | XOR [1] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1] [1] | mathOperator | Element (Global)

### 2.3.114 TemplateDeclaration Class Mapping

The UML/XSD Mapping for the "TemplateDeclaration" Class is given in Table 2.3.114.

Table 2.3.114 UML/XSD Mapping for the "TemplateDeclaration" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TemplateDeclaration | Core | Container [ Sequence ] | - N/A - | TemplateDeclaration.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
cardinality | Characteristic | [ Enumeration (Cardinality) ] | [1] | cardinality | Attribute (Global)
baseType | Characteristic | [ Enumeration (BaseType) ] | [0..1] | baseType | Attribute (Global)
paramVariable | Characteristic | PT: Boolean | [0..1] | paramVariable | Attribute (Global)
mathVariable | Characteristic | PT: Boolean | [0..1] | mathVariable | Attribute (Global)
defaultValue | Attribute | DefaultValue | [0..1] | defaultValue | Element (Global)

### 2.3.115 TemplateDefault Class Mapping

The UML/XSD Mapping for the "TemplateDefault" Class is given in Table 2.3.115.

Table 2.3.115 UML/XSD Mapping for the "TemplateDefault" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TemplateDefault | Core | Container [ Sequence ] | - N/A - | TemplateDefault.Type | ComplexType
templateIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | templateIdentifier | Attribute (Global)
and | Attribute | Logic1toMany | XOR [1] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1] [1] | match | Element (Global)
index | Attribute | Index | XOR [1] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1] [1] | mathOperator | Element (Global)

### 2.3.116 TemplateElse Class Mapping

The UML/XSD Mapping for the "TemplateElse" Class is given in Table 2.3.116.

Table 2.3.116 UML/XSD Mapping for the "TemplateElse" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TemplateElse | Core | Container [ Sequence ] | - N/A - | TemplateElse.Type | ComplexType
setTemplateValue | Attribute | SetValue | XOR [0.. *] [1] | setTemplateValue | Element (Global)
exitTemplate | Attribute | PT: Empty | XOR [0.. *] [1] | exitTemplate | Element (Global)
templateCondition | Attribute | TemplateCondition | XOR [0.. *] [1] | templateCondition | Element (Global)
setDefaultValue | Attribute | SetValue | XOR [0.. *] [1] | setDefaultValue | Element (Global)
setCorrectResponse | Attribute | SetValue | XOR [0.. *] [1] | setCorrectResponse | Element (Global)
templateConstraint | Attribute | TemplateConstraint | XOR [0.. *] [1] | templateConstraint | Element (Global)

### 2.3.117 TemplateIf Class Mapping

The UML/XSD Mapping for the "TemplateIf" Class is given in Table 2.3.117.

Table 2.3.117 UML/XSD Mapping for the "TemplateIf" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TemplateIf | Core | Container [ Sequence ] | - N/A - | TemplateIf.Type | ComplexType
and | Attribute | Logic1toMany | XOR [1] [1] | and | Element (Global)
gt | Attribute | LogicPair | XOR [1] [1] | gt | Element (Global)
not | Attribute | LogicSingle | XOR [1] [1] | not | Element (Global)
lt | Attribute | LogicPair | XOR [1] [1] | lt | Element (Global)
gte | Attribute | LogicPair | XOR [1] [1] | gte | Element (Global)
lte | Attribute | LogicPair | XOR [1] [1] | lte | Element (Global)
or | Attribute | Logic1toMany | XOR [1] [1] | or | Element (Global)
sum | Attribute | NumericLogic1toMany | XOR [1] [1] | sum | Element (Global)
durationLT | Attribute | LogicPair | XOR [1] [1] | durationLT | Element (Global)
durationGTE | Attribute | LogicPair | XOR [1] [1] | durationGTE | Element (Global)
subtract | Attribute | LogicPair | XOR [1] [1] | subtract | Element (Global)
divide | Attribute | LogicPair | XOR [1] [1] | divide | Element (Global)
multiple | Attribute | Logic0toMany | XOR [1] [1] | multiple | Element (Global)
ordered | Attribute | Logic0toMany | XOR [1] [1] | ordered | Element (Global)
customOperator | Attribute | CustomOperator | XOR [1] [1] | customOperator | Element (Global)
random | Attribute | LogicSingle | XOR [1] [1] | random | Element (Global)
numberIncorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberIncorrect | Element (Global)
numberCorrect | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberCorrect | Element (Global)
numberPresented | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberPresented | Element (Global)
numberResponded | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberResponded | Element (Global)
numberSelected | Attribute | DT: Number (PT: Empty) | XOR [1] [1] | numberSelected | Element (Global)
substring | Attribute | Substring | XOR [1] [1] | substring | Element (Global)
equalRounded | Attribute | EqualRounded | XOR [1] [1] | equalRounded | Element (Global)
null | Attribute | PT: Empty | XOR [1] [1] | null | Element (Global)
delete | Attribute | LogicPair | XOR [1] [1] | delete | Element (Global)
match | Attribute | LogicPair | XOR [1] [1] | match | Element (Global)
index | Attribute | Index | XOR [1] [1] | index | Element (Global)
power | Attribute | LogicPair | XOR [1] [1] | power | Element (Global)
equal | Attribute | Equal | XOR [1] [1] | equal | Element (Global)
contains | Attribute | LogicPair | XOR [1] [1] | contains | Element (Global)
containerSize | Attribute | LogicSingle | XOR [1] [1] | containerSize | Element (Global)
correct | Attribute | DT: Correct (PT: Empty) | XOR [1] [1] | correct | Element (Global)
default | Attribute | DT: Default (PT: Empty) | XOR [1] [1] | default | Element (Global)
anyN | Attribute | AnyN | XOR [1] [1] | anyN | Element (Global)
integerDivide | Attribute | LogicPair | XOR [1] [1] | integerDivide | Element (Global)
integerModulus | Attribute | LogicPair | XOR [1] [1] | integerModulus | Element (Global)
isNull | Attribute | LogicSingle | XOR [1] [1] | isNull | Element (Global)
member | Attribute | LogicPair | XOR [1] [1] | member | Element (Global)
product | Attribute | Logic1toMany | XOR [1] [1] | product | Element (Global)
round | Attribute | LogicSingle | XOR [1] [1] | round | Element (Global)
truncate | Attribute | LogicSingle | XOR [1] [1] | truncate | Element (Global)
fieldValue | Attribute | FieldValue | XOR [1] [1] | fieldValue | Element (Global)
randomInteger | Attribute | DT: RandomInteger (PT: Empty) | XOR [1] [1] | randomInteger | Element (Global)
randomFloat | Attribute | DT: RandomFloat (PT: Empty) | XOR [1] [1] | randomFloat | Element (Global)
variable | Attribute | DT: Variable (PT: Empty) | XOR [1] [1] | variable | Element (Global)
outcomeMinimum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMinimum | Element (Global)
outcomeMaximum | Attribute | DT: OutcomeMinMax (PT: Empty) | XOR [1] [1] | outcomeMaximum | Element (Global)
testVariables | Attribute | DT: TestVariables (PT: Empty) | XOR [1] [1] | testVariables | Element (Global)
integerToFloat | Attribute | LogicSingle | XOR [1] [1] | integerToFloat | Element (Global)
inside | Attribute | Inside | XOR [1] [1] | inside | Element (Global)
baseValue | Attribute | DT: BaseValue (PT: String) | XOR [1] [1] | baseValue | Element (Global)
patternMatch | Attribute | PatternMatch | XOR [1] [1] | patternMatch | Element (Global)
mapResponsePoint | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponsePoint | Element (Global)
mapResponse | Attribute | DT: MapResponse (PT: Empty) | XOR [1] [1] | mapResponse | Element (Global)
stringMatch | Attribute | StringMatch | XOR [1] [1] | stringMatch | Element (Global)
repeat | Attribute | Repeat | XOR [1] [1] | repeat | Element (Global)
roundTo | Attribute | RoundTo | XOR [1] [1] | roundTo | Element (Global)
lcm | Attribute | Logic1toMany | XOR [1] [1] | lcm | Element (Global)
gcd | Attribute | Logic1toMany | XOR [1] [1] | gcd | Element (Global)
min | Attribute | Logic1toMany | XOR [1] [1] | min | Element (Global)
max | Attribute | Logic1toMany | XOR [1] [1] | max | Element (Global)
mathConstant | Attribute | DT: MathConstant (PT: Empty) | XOR [1] [1] | mathConstant | Element (Global)
statsOperator | Attribute | StatsOperator | XOR [1] [1] | statsOperator | Element (Global)
mathOperator | Attribute | MathOperator | XOR [1] [1] | mathOperator | Element (Global)
setTemplateValue | Attribute | SetValue | XOR [0.. *] [1] | setTemplateValue | Element (Global)
exitTemplate | Attribute | PT: Empty | XOR [0.. *] [1] | exitTemplate | Element (Global)
templateCondition | Attribute | TemplateCondition | XOR [0.. *] [1] | templateCondition | Element (Global)
setDefaultValue | Attribute | SetValue | XOR [0.. *] [1] | setDefaultValue | Element (Global)
setCorrectResponse | Attribute | SetValue | XOR [0.. *] [1] | setCorrectResponse | Element (Global)
templateConstraint | Attribute | TemplateConstraint | XOR [0.. *] [1] | templateConstraint | Element (Global)

### 2.3.118 TemplateInline Class Mapping

The UML/XSD Mapping for the "TemplateInline" Class is given in Table 2.3.118.

Table 2.3.118 UML/XSD Mapping for the "TemplateInline" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TemplateInline | Core | Container [ Sequence ] | - N/A - | TemplateInline.Type | ComplexType
templateIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | templateIdentifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [0..1] | showHide | Attribute (Global)
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
hottext | Attribute | HotText | XOR [0.. *] [1] | hottext | Element (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
gap | Attribute | Gap | XOR [0.. *] [1] | gap | Element (Global)
feedbackInline | Attribute | FeedbackInline | XOR [0.. *] [1] | feedbackInline | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)

### 2.3.119 TemplateProcessing Class Mapping

The UML/XSD Mapping for the "TemplateProcessing" Class is given in Table 2.3.119.

Table 2.3.119 UML/XSD Mapping for the "TemplateProcessing" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TemplateProcessing | Core | Container [ Sequence ] | - N/A - | TemplateProcessing.Type | ComplexType
setTemplateValue | Attribute | SetValue | XOR [1.. *] [1] | setTemplateValue | Element (Global)
exitTemplate | Attribute | PT: Empty | XOR [1.. *] [1] | exitTemplate | Element (Global)
templateCondition | Attribute | TemplateCondition | XOR [1.. *] [1] | templateCondition | Element (Global)
setDefaultValue | Attribute | SetValue | XOR [1.. *] [1] | setDefaultValue | Element (Global)
setCorrectResponse | Attribute | SetValue | XOR [1.. *] [1] | setCorrectResponse | Element (Global)
templateConstraint | Attribute | TemplateConstraint | XOR [1.. *] [1] | templateConstraint | Element (Global)

### 2.3.120 TestFeedback Class Mapping

The UML/XSD Mapping for the "TestFeedback" Class is given in Table 2.3.120.

Table 2.3.120 UML/XSD Mapping for the "TestFeedback" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TestFeedback | Core | Container [ Sequence ] | - N/A - | TestFeedback.Type | ComplexType
access | Characteristic | [ Enumeration (TestFeedbackAccess) ] | [1] | access | Attribute (Global)
outcomeIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | outcomeIdentifier | Attribute (Global)
showHide | Characteristic | [ Enumeration (ShowHide) ] | [1] | showHide | Attribute (Global)
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
title | Characteristic | PT: NormalizedString | [0..1] | title | Attribute (Global)
printedVariable | Attribute | DT: PrintedVariable (PT: Empty) | XOR [0.. *] [1] | printedVariable | Element (Global)
hottext | Attribute | HotText | XOR [0.. *] [1] | hottext | Element (Global)
templateInline | Attribute | TemplateInline | XOR [0.. *] [1] | templateInline | Element (Global)
templateBlock | Attribute | TemplateBlock | XOR [0.. *] [1] | templateBlock | Element (Global)
math | Attribute | [ Imported (MathML2) ] | XOR [0.. *] [1] | m2:math | Element (Global)
math | Attribute | [ Imported (MathML3) ] | XOR [0.. *] [1] | m3:math | Element (Global)
include | Attribute | [ Imported (Include) ] | XOR [0.. *] [1] | xi:include | Element (Global)
pre | Attribute | HTMLText | XOR [1] [1] | pre | Element (Global)
h1 | Attribute | HTMLText | XOR [1] [1] | h1 | Element (Global)
h2 | Attribute | HTMLText | XOR [1] [1] | h2 | Element (Global)
h3 | Attribute | HTMLText | XOR [1] [1] | h3 | Element (Global)
h4 | Attribute | HTMLText | XOR [1] [1] | h4 | Element (Global)
h5 | Attribute | HTMLText | XOR [1] [1] | h5 | Element (Global)
h6 | Attribute | HTMLText | XOR [1] [1] | h6 | Element (Global)
p | Attribute | HTMLText | XOR [1] [1] | p | Element (Global)
address | Attribute | HTMLText | XOR [1] [1] | address | Element (Global)
dl | Attribute | DL | XOR [1] [1] | dl | Element (Global)
ol | Attribute | OUL | XOR [1] [1] | ol | Element (Global)
ul | Attribute | OUL | XOR [1] [1] | ul | Element (Global)
br | Attribute | BR | XOR [1] [1] | br | Element (Global)
hr | Attribute | HR | XOR [1] [1] | hr | Element (Global)
img | Attribute | Img | XOR [1] [1] | img | Element (Global)
object | Attribute | Object | XOR [1] [1] | object | Element (Global)
blockquote | Attribute | BlockQuote | XOR [1] [1] | blockquote | Element (Global)
em | Attribute | HTMLText | XOR [1] [1] | em | Element (Global)
a | Attribute | A | XOR [1] [1] | a | Element (Global)
code | Attribute | HTMLText | XOR [1] [1] | code | Element (Global)
span | Attribute | HTMLText | XOR [1] [1] | span | Element (Global)
sub | Attribute | HTMLText | XOR [1] [1] | sub | Element (Global)
acronym | Attribute | HTMLText | XOR [1] [1] | acronym | Element (Global)
big | Attribute | HTMLText | XOR [1] [1] | big | Element (Global)
tt | Attribute | HTMLText | XOR [1] [1] | tt | Element (Global)
kbd | Attribute | HTMLText | XOR [1] [1] | kbd | Element (Global)
q | Attribute | Q | XOR [1] [1] | q | Element (Global)
i | Attribute | HTMLText | XOR [1] [1] | i | Element (Global)
dfn | Attribute | HTMLText | XOR [1] [1] | dfn | Element (Global)
abbr | Attribute | HTMLText | XOR [1] [1] | abbr | Element (Global)
strong | Attribute | HTMLText | XOR [1] [1] | strong | Element (Global)
sup | Attribute | HTMLText | XOR [1] [1] | sup | Element (Global)
var | Attribute | HTMLText | XOR [1] [1] | var | Element (Global)
small | Attribute | HTMLText | XOR [1] [1] | small | Element (Global)
samp | Attribute | HTMLText | XOR [1] [1] | samp | Element (Global)
b | Attribute | HTMLText | XOR [1] [1] | b | Element (Global)
cite | Attribute | HTMLText | XOR [1] [1] | cite | Element (Global)
table | Attribute | Table | XOR [1] [1] | table | Element (Global)
div | Attribute | Div | XOR [1] [1] | div | Element (Global)
bdo | Attribute | BDO | XOR [1] [1] | bdo | Element (Global)
bdi | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:bdi | Element (Global)
figure | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:figure | Element (Global)
audio | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:audio | Element (Global)
video | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:video | Element (Global)
article | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:article | Element (Global)
aside | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:aside | Element (Global)
footer | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:footer | Element (Global)
header | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:header | Element (Global)
label | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:label | Element (Global)
nav | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:nav | Element (Global)
section | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:section | Element (Global)
ruby | Attribute | [ Imported (HTML5) ] | XOR [1] [1] | qh5:ruby | Element (Global)
p | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:p | Element (Global)
s | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:s | Element (Global)
say-as | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:say-as | Element (Global)
phoneme | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:phoneme | Element (Global)
sub | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:sub | Element (Global)
voice | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:voice | Element (Global)
emphasis | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:emphasis | Element (Global)
break | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:break | Element (Global)
prosody | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:prosody | Element (Global)
mark | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:mark | Element (Global)
audio | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:audio | Element (Global)
speak | Attribute | [ Imported (SSMLv1p1) ] | XOR [1] [1] | ssml11:speak | Element (Global)
stylesheet | Attribute | DT: StyleSheet (PT: Empty) | [0.. *] | stylesheet | Element (Global)
apipAccessibility | Attribute | [ Imported (APIPAccessibility) ] | [0..1] | apipAccessibility | Element (Global)

### 2.3.121 TestPart Class Mapping

The UML/XSD Mapping for the "TestPart" Class is given in Table 2.3.121.

Table 2.3.121 UML/XSD Mapping for the "TestPart" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TestPart | Core | Container [ Sequence ] | - N/A - | TestPart.Type | ComplexType
identifier | Characteristic | PT: NormalizedString | [1] | identifier | Attribute (Global)
navigationMode | Characteristic | [ Enumeration (NavigationMode) ] | [1] | navigationMode | Attribute (Global)
submissionMode | Characteristic | [ Enumeration (SubmissionMode) ] | [1] | submissionMode | Attribute (Global)
preCondition | Attribute | LogicSingle | [0.. *] | preCondition | Element (Global)
branchRule | Attribute | BranchRule | [0.. *] | branchRule | Element (Global)
itemSessionControl | Attribute | DT: ItemSessionControl (PT: Empty) | [0..1] | itemSessionControl | Element (Global)
timeLimits | Attribute | DT: TimeLimits (PT: Empty) | [0..1] | timeLimits | Element (Global)
assessmentSection | Attribute | AssessmentSection | XOR [1.. *] [1] | assessmentSection | Element (Global)
assessmentSectionRef | Attribute | DT: AssessmentSectionRef (PT: Empty) | XOR [1.. *] [1] | assessmentSectionRef | Element (Global)
testFeedback | Attribute | TestFeedback | [0.. *] | testFeedback | Element (Global)

### 2.3.122 TextEntryInteraction Class Mapping

The UML/XSD Mapping for the "TextEntryInteraction" Class is given in Table 2.3.122.

Table 2.3.122 UML/XSD Mapping for the "TextEntryInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TextEntryInteraction | Core | Container [ Sequence ] | - N/A - | TextEntryInteraction.Type | ComplexType
responseIdentifier | Characteristic | DT: UniqueIdentifierRef (PT: IDREF) | [1] | responseIdentifier | Attribute (Global)
base | Characteristic | PT: Int | [0..1] | base | Attribute (Global)
stringIdentifier | Characteristic | DT: UniqueIdentifierRef (PT: IDREF) | [0..1] | stringIdentifier | Attribute (Global)
expectedLength | Characteristic | PT: NonNegativeInteger | [0..1] | expectedLength | Attribute (Global)
patternMask | Characteristic | PT: String | [0..1] | patternMask | Attribute (Global)
placeholderText | Characteristic | PT: String | [0..1] | placeholderText | Attribute (Global)
format | Characteristic | PT: NormalizedString | [0..1] | format | Attribute (Global)

### 2.3.123 UploadInteraction Class Mapping

The UML/XSD Mapping for the "UploadInteraction" Class is given in Table 2.3.123.

Table 2.3.123 UML/XSD Mapping for the "UploadInteraction" Core Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
UploadInteraction | Core | Container [ Sequence ] | - N/A - | UploadInteraction.Type | ComplexType
type | Characteristic | DT: MimeType (PT: NormalizedString) | [0..1] | type | Attribute (Global)

## 2.4 Derived Class UML/XSD Mapping

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.1 ARIALevelInteger Derived Class Mapping

The UML/XSD Mapping for the "ARIALevelInteger" Derived Class is given in Table 2.4.1.

Table 2.4.1 UML/XSD Mapping for the "ARIALevelInteger" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
ARIALevelInteger | Derived | PT: Integer | - N/A - | ARIALevelInteger.Type | SimpleType
minInclusive | Attribute | PT: Integer | [1] | [ No XML instance visibility ] | Restriction (MinInclusive) on the Primitive Type.

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.2 AreaMapEntry Derived Class Mapping

The UML/XSD Mapping for the "AreaMapEntry" Derived Class is given in Table 2.4.2.

Table 2.4.2 UML/XSD Mapping for the "AreaMapEntry" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
AreaMapEntry | Derived | PT: Empty | - N/A - | AreaMapEntry.Type | ComplexType
shape | Characteristic | [ Enumeration (Shape) ] | [1] | shape | Attribute (Global)
coords | Characteristic | DT: Coords (PT: NormalizedString) | [1] | coords | Attribute (Global)
mappedValue | Characteristic | PT: Double | [1] | mappedValue | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.3 AssessmentSectionRef Derived Class Mapping

The UML/XSD Mapping for the "AssessmentSectionRef" Derived Class is given in Table 2.4.3.

Table 2.4.3 UML/XSD Mapping for the "AssessmentSectionRef" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
AssessmentSectionRef | Derived | PT: Empty | - N/A - | AssessmentSectionRef.Type | ComplexType
identifier | Characteristic | PT: NormalizedString | [1] | identifier | Attribute (Global)
href | Characteristic | PT: AnyURI | [1] | href | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.4 AssessmentStimulusRef Derived Class Mapping

The UML/XSD Mapping for the "AssessmentStimulusRef" Derived Class is given in Table 2.4.4.

Table 2.4.4 UML/XSD Mapping for the "AssessmentStimulusRef" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
AssessmentStimulusRef | Derived | PT: Empty | - N/A - | AssessmentStimulusRef.Type | ComplexType
identifier | Characteristic | PT: NormalizedString | [1] | identifier | Attribute (Global)
href | Characteristic | PT: AnyURI | [1] | href | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.5 BaseSequenceXBaseEmpty Derived Class Mapping

The UML/XSD Mapping for the "BaseSequenceXBaseEmpty" Derived Class is given in Table 2.4.5.

Table 2.4.5 UML/XSD Mapping for the "BaseSequenceXBaseEmpty" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
BaseSequenceXBaseEmpty | Derived | PT: Empty | - N/A - | BaseSequenceXBaseEmpty.Type | ComplexType
id | Characteristic | DT: UniqueIdentifier (PT: ID) | [0..1] | id | Attribute (Global)
class | Characteristic | [ List (StringList) ] | [0..1] | class | Attribute (Global)
language | Characteristic | PT: Language | [0..1] | xml:lang | Attribute (Global)
label | Characteristic | PT: NormalizedString | [0..1] | label | Attribute (Global)
base | Characteristic | PT: Base | [0..1] | xml:base | Attribute (Global)
dir | Characteristic | [ Enumeration (DIR) ] | [0..1] | dir | Attribute (Global)
role | Characteristic | [ Enumeration (ARIARoleValue) ] | [0..1] | role | Attribute (Global)
aria-controls | Characteristic | PT: IDREFS | [0..1] | aria-controls | Attribute (Global)
aria-describedby | Characteristic | PT: IDREFS | [0..1] | aria-describedby | Attribute (Global)
aria-flowsto | Characteristic | PT: IDREFS | [0..1] | aria-flowsto | Attribute (Global)
aria-label | Characteristic | PT: NormalizedString | [0..1] | aria-label | Attribute (Global)
aria-labelledby | Characteristic | PT: IDREFS | [0..1] | aria-labelledby | Attribute (Global)
aria-level | Characteristic | DT: ARIALevelInteger (PT: Integer) | [0..1] | aria-level | Attribute (Global)
aria-live | Characteristic | [ Enumeration (ARIALiveValue) ] | [0..1] | aria-live | Attribute (Global)
aria-orientation | Characteristic | [ Enumeration (ARIAOrientationValue) ] | [0..1] | aria-orientation | Attribute (Global)
aria-owns | Characteristic | PT: IDREFS | [0..1] | aria-owns | Attribute (Global)
dataExtension | Characteristic | DT: DataHTML5Extension (PT: AnyTypeLax) | [0..*] | dataExtension | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.6 BaseValue Derived Class Mapping

The UML/XSD Mapping for the "BaseValue" Derived Class is given in Table 2.4.6.

Table 2.4.6 UML/XSD Mapping for the "BaseValue" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
BaseValue | Derived | PT: String | - N/A - | BaseValue.Type | ComplexType
baseType | Characteristic | [ Enumeration (BaseType) ] | [1] | baseType | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.7 Coords Derived Class Mapping

The UML/XSD Mapping for the "Coords" Derived Class is given in Table 2.4.7.

Table 2.4.7 UML/XSD Mapping for the "Coords" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Coords | Derived | PT: NormalizedString | - N/A - | Coords.Type | SimpleType
pattern | Attribute | PT: String | [1] | [ No XML instance visibility ] | Restriction (Pattern) on the Primitive Type.

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.8 Correct Derived Class Mapping

The UML/XSD Mapping for the "Correct" Derived Class is given in Table 2.4.8.

Table 2.4.8 UML/XSD Mapping for the "Correct" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Correct | Derived | PT: Empty | - N/A - | Correct.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.9 DataHTML5Extension Derived Class Mapping

The UML/XSD Mapping for the "DataHTML5Extension" Derived Class is given in Table 2.4.9.

Table 2.4.9 UML/XSD Mapping for the "DataHTML5Extension" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
DataHTML5Extension | Derived | PT: AnyTypeLax | - N/A - | [ No XML instance visibility ] | There is no equivalent derived complexType. This is a logical class that is used to identify a namespace constraint.
pattern | Attribute | PT: String | [1] | [ No XML instance visibility ] | Restriction (Pattern) on the Primitive Type.

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.10 Default Derived Class Mapping

The UML/XSD Mapping for the "Default" Derived Class is given in Table 2.4.10.

Table 2.4.10 UML/XSD Mapping for the "Default" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Default | Derived | PT: Empty | - N/A - | Default.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.11 EncVariableString Derived Class Mapping

The UML/XSD Mapping for the "EncVariableString" Derived Class is given in Table 2.4.11.

Table 2.4.11 UML/XSD Mapping for the "EncVariableString" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
EncVariableString | Derived | PT: String | - N/A - | EncVariableString.Type | SimpleType
pattern | Attribute | PT: String | [1] | [ No XML instance visibility ] | Restriction (Pattern) on the Primitive Type.

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.12 Identifier Derived Class Mapping

The UML/XSD Mapping for the "Identifier" Derived Class is given in Table 2.4.12.

Table 2.4.12 UML/XSD Mapping for the "Identifier" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Identifier | Derived | PT: NCName | - N/A - | Identifier.Type | SimpleType

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.13 InterpolationTableEntry Derived Class Mapping

The UML/XSD Mapping for the "InterpolationTableEntry" Derived Class is given in Table 2.4.13.

Table 2.4.13 UML/XSD Mapping for the "InterpolationTableEntry" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
InterpolationTableEntry | Derived | PT: Empty | - N/A - | InterpolationTableEntry.Type | ComplexType
sourceValue | Characteristic | PT: Double | [1] | sourceValue | Attribute (Global)
includeBoundary | Characteristic | PT: Boolean | [0..1] | includeBoundary | Attribute (Global)
targetValue | Characteristic | PT: String | [1] | targetValue | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.14 ItemSessionControl Derived Class Mapping

The UML/XSD Mapping for the "ItemSessionControl" Derived Class is given in Table 2.4.14.

Table 2.4.14 UML/XSD Mapping for the "ItemSessionControl" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
ItemSessionControl | Derived | PT: Empty | - N/A - | ItemSessionControl.Type | ComplexType
maxAttempts | Characteristic | PT: Int | [0..1] | maxAttempts | Attribute (Global)
showFeedback | Characteristic | PT: Boolean | [0..1] | showFeedback | Attribute (Global)
allowReview | Characteristic | PT: Boolean | [0..1] | allowReview | Attribute (Global)
showSolution | Characteristic | PT: Boolean | [0..1] | showSolution | Attribute (Global)
allowComment | Characteristic | PT: Boolean | [0..1] | allowComment | Attribute (Global)
allowSkipping | Characteristic | PT: Boolean | [0..1] | allowSkipping | Attribute (Global)
validateResponses | Characteristic | PT: Boolean | [0..1] | validateResponses | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.15 Length Derived Class Mapping

The UML/XSD Mapping for the "Length" Derived Class is given in Table 2.4.15.

Table 2.4.15 UML/XSD Mapping for the "Length" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Length | Derived | PT: String | - N/A - | Length.Type | SimpleType
pattern | Attribute | PT: String | [1] | [ No XML instance visibility ] | Restriction (Pattern) on the Primitive Type.

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.16 MapEntry Derived Class Mapping

The UML/XSD Mapping for the "MapEntry" Derived Class is given in Table 2.4.16.

Table 2.4.16 UML/XSD Mapping for the "MapEntry" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
MapEntry | Derived | PT: Empty | - N/A - | MapEntry.Type | ComplexType
mapKey | Characteristic | PT: NormalizedString | [1] | mapKey | Attribute (Global)
mappedValue | Characteristic | PT: Double | [1] | mappedValue | Attribute (Global)
caseSensitive | Characteristic | PT: Boolean | [0..1] | caseSensitive | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.17 MapResponse Derived Class Mapping

The UML/XSD Mapping for the "MapResponse" Derived Class is given in Table 2.4.17.

Table 2.4.17 UML/XSD Mapping for the "MapResponse" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
MapResponse | Derived | PT: Empty | - N/A - | MapResponse.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.18 MatchTableEntry Derived Class Mapping

The UML/XSD Mapping for the "MatchTableEntry" Derived Class is given in Table 2.4.18.

Table 2.4.18 UML/XSD Mapping for the "MatchTableEntry" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
MatchTableEntry | Derived | PT: Empty | - N/A - | MatchTableEntry.Type | ComplexType
sourceValue | Characteristic | PT: Int | [1] | sourceValue | Attribute (Global)
targetValue | Characteristic | [ Enumeration (BaseType) ] | [1] | targetValue | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.19 MathConstant Derived Class Mapping

The UML/XSD Mapping for the "MathConstant" Derived Class is given in Table 2.4.19.

Table 2.4.19 UML/XSD Mapping for the "MathConstant" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
MathConstant | Derived | PT: Empty | - N/A - | MathConstant.Type | ComplexType
name | Characteristic | [ Enumeration (MathConstantNames) ] | [1] | name | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.20 MimeType Derived Class Mapping

The UML/XSD Mapping for the "MimeType" Derived Class is given in Table 2.4.20.

Table 2.4.20 UML/XSD Mapping for the "MimeType" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
MimeType | Derived | PT: NormalizedString | - N/A - | MimeType.Type | SimpleType
pattern | Attribute | PT: String | [1] | [ No XML instance visibility ] | Restriction (Pattern) on the Primitive Type.

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.21 NonNegativeDouble Derived Class Mapping

The UML/XSD Mapping for the "NonNegativeDouble" Derived Class is given in Table 2.4.21.

Table 2.4.21 UML/XSD Mapping for the "NonNegativeDouble" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
NonNegativeDouble | Derived | PT: Double | - N/A - | NonNegativeDouble.Type | SimpleType
minInclusive | Attribute | PT: Double | [1] | minInclusive | Restriction (MinInclusive) on the Primitive Type.

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.22 Number Derived Class Mapping

The UML/XSD Mapping for the "Number" Derived Class is given in Table 2.4.22.

Table 2.4.22 UML/XSD Mapping for the "Number" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Number | Derived | PT: Empty | - N/A - | Number.Type | ComplexType
sectionIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | sectionIdentifier | Attribute (Global)
includeCategory | Characteristic | [ List (IdentifierList) ] | [0..1] | includeCategory | Attribute (Global)
excludeCategory | Characteristic | [ List (IdentifierList) ] | [0..1] | excludeCategory | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.23 OutcomeMinMax Derived Class Mapping

The UML/XSD Mapping for the "OutcomeMinMax" Derived Class is given in Table 2.4.23.

Table 2.4.23 UML/XSD Mapping for the "OutcomeMinMax" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
OutcomeMinMax | Derived | PT: Empty | - N/A - | OutcomeMinMax.Type | ComplexType
sectionIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | sectionIdentifier | Attribute (Global)
includeCategory | Characteristic | [ List (IdentifierList) ] | [0..1] | includeCategory | Attribute (Global)
excludeCategory | Characteristic | [ List (IdentifierList) ] | [0..1] | excludeCategory | Attribute (Global)
outcomeIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | outcomeIdentifier | Attribute (Global)
weightIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | weightIdentifier | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.24 Param Derived Class Mapping

The UML/XSD Mapping for the "Param" Derived Class is given in Table 2.4.24.

Table 2.4.24 UML/XSD Mapping for the "Param" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Param | Derived | PT: Empty | - N/A - | Param.Type | ComplexType
name | Characteristic | PT: String | [1] | name | Attribute (Global)
value | Characteristic | PT: String | [1] | value | Attribute (Global)
valuetype | Characteristic | [ Enumeration (ParamType) ] | [1] | valuetype | Attribute (Global)
type | Characteristic | DT: MimeType (PT: NormalizedString) | [0..1] | type | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.25 PrintedVariable Derived Class Mapping

The UML/XSD Mapping for the "PrintedVariable" Derived Class is given in Table 2.4.25.

Table 2.4.25 UML/XSD Mapping for the "PrintedVariable" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
PrintedVariable | Derived | PT: Empty | - N/A - | PrintedVariable.Type | ComplexType
id | Characteristic | DT: UniqueIdentifier (PT: ID) | [0..1] | id | Attribute (Global)
class | Characteristic | [ List (StringList) ] | [0..1] | class | Attribute (Global)
language | Characteristic | PT: Language | [0..1] | xml:lang | Attribute (Global)
label | Characteristic | PT: NormalizedString | [0..1] | label | Attribute (Global)
baseuri | Characteristic | PT: Base | [0..1] | xml:base | Attribute (Global)
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
format | Characteristic | PT: NormalizedString | [0..1] | format | Attribute (Global)
base | Characteristic | [ Union (IntegerOrVariableRef) ] | [0..1] | base | Attribute (Global)
index | Characteristic | [ Union (IntegerOrVariableRef) ] | [0..1] | index | Attribute (Global)
powerForm | Characteristic | PT: Boolean | [0..1] | powerForm | Attribute (Global)
field | Characteristic | PT: NormalizedString | [0..1] | field | Attribute (Global)
delimiter | Characteristic | PT: NormalizedString | [0..1] | delimiter | Attribute (Global)
mappingIndicator | Characteristic | PT: NormalizedString | [0..1] | mappingIndicator | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.26 RandomFloat Derived Class Mapping

The UML/XSD Mapping for the "RandomFloat" Derived Class is given in Table 2.4.26.

Table 2.4.26 UML/XSD Mapping for the "RandomFloat" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
RandomFloat | Derived | PT: Empty | - N/A - | RandomFloat.Type | ComplexType
min | Characteristic | [ Union (FloatOrVariableRef) ] | [0..1] | min | Attribute (Global)
max | Characteristic | [ Union (FloatOrVariableRef) ] | [1] | max | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.27 RandomInteger Derived Class Mapping

The UML/XSD Mapping for the "RandomInteger" Derived Class is given in Table 2.4.27.

Table 2.4.27 UML/XSD Mapping for the "RandomInteger" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
RandomInteger | Derived | PT: Empty | - N/A - | RandomInteger.Type | ComplexType
min | Characteristic | [ Union (IntegerOrVariableRef) ] | [0..1] | min | Attribute (Global)
max | Characteristic | [ Union (IntegerOrVariableRef) ] | [1] | max | Attribute (Global)
step | Characteristic | [ Union (IntegerOrVariableRef) ] | [0..1] | step | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.28 StyleSheet Derived Class Mapping

The UML/XSD Mapping for the "StyleSheet" Derived Class is given in Table 2.4.28.

Table 2.4.28 UML/XSD Mapping for the "StyleSheet" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
StyleSheet | Derived | PT: Empty | - N/A - | StyleSheet.Type | ComplexType
href | Characteristic | PT: AnyURI | [1] | href | Attribute (Global)
type | Characteristic | DT: MimeType (PT: NormalizedString) | [1] | type | Attribute (Global)
media | Characteristic | PT: NormalizedString | [0..1] | media | Attribute (Global)
title | Characteristic | PT: NormalizedString | [0..1] | title | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.29 TestVariables Derived Class Mapping

The UML/XSD Mapping for the "TestVariables" Derived Class is given in Table 2.4.29.

Table 2.4.29 UML/XSD Mapping for the "TestVariables" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TestVariables | Derived | PT: Empty | - N/A - | TestVariables.Type | ComplexType
sectionIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | sectionIdentifier | Attribute (Global)
includeCategory | Characteristic | [ List (IdentifierList) ] | [0..1] | includeCategory | Attribute (Global)
excludeCategory | Characteristic | [ List (IdentifierList) ] | [0..1] | excludeCategory | Attribute (Global)
variableIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | variableIdentifier | Attribute (Global)
weightIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | weightIdentifier | Attribute (Global)
baseType | Characteristic | [ Enumeration (BaseType) ] | [0..1] | baseType | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.30 TimeLimits Derived Class Mapping

The UML/XSD Mapping for the "TimeLimits" Derived Class is given in Table 2.4.30.

Table 2.4.30 UML/XSD Mapping for the "TimeLimits" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
TimeLimits | Derived | PT: Empty | - N/A - | TimeLimits.Type | ComplexType
minTime | Characteristic | DT: NonNegativeDouble (PT: Double) | [0..1] | minTime | Attribute (Global)
maxTime | Characteristic | DT: NonNegativeDouble (PT: Double) | [0..1] | maxTime | Attribute (Global)
allowLateSubmission | Characteristic | PT: Boolean | [0..1] | allowLateSubmission | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.31 UniqueIdentifier Derived Class Mapping

The UML/XSD Mapping for the "UniqueIdentifier" Derived Class is given in Table 2.4.31.

Table 2.4.31 UML/XSD Mapping for the "UniqueIdentifier" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
UniqueIdentifier | Derived | PT: ID | - N/A - | UniqueIdentifier.Type | SimpleType

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.32 UniqueIdentifierRef Derived Class Mapping

The UML/XSD Mapping for the "UniqueIdentifierRef" Derived Class is given in Table 2.4.32.

Table 2.4.32 UML/XSD Mapping for the "UniqueIdentifierRef" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
UniqueIdentifierRef | Derived | PT: IDREF | - N/A - | UniqueIdentifierRef.Type | SimpleType

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.33 Value Derived Class Mapping

The UML/XSD Mapping for the "Value" Derived Class is given in Table 2.4.33.

Table 2.4.33 UML/XSD Mapping for the "Value" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Value | Derived | PT: NormalizedString | - N/A - | Value.Type | ComplexType
fieldIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | fieldIdentifier | Attribute (Global)
baseType | Characteristic | [ Enumeration (BaseType) ] | [0..1] | baseType | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.34 Variable Derived Class Mapping

The UML/XSD Mapping for the "Variable" Derived Class is given in Table 2.4.34.

Table 2.4.34 UML/XSD Mapping for the "Variable" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Variable | Derived | PT: Empty | - N/A - | Variable.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
weightIdentifier | Characteristic | DT: Identifier (PT: NCName) | [0..1] | weightIdentifier | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.35 VariableMapping Derived Class Mapping

The UML/XSD Mapping for the "VariableMapping" Derived Class is given in Table 2.4.35.

Table 2.4.35 UML/XSD Mapping for the "VariableMapping" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
VariableMapping | Derived | PT: Empty | - N/A - | VariableMapping.Type | ComplexType
sourceIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | sourceIdentifier | Attribute (Global)
targetIdentifier | Characteristic | DT: Identifier (PT: NCName) | [1] | targetIdentifier | Attribute (Global)

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.36 VariableString Derived Class Mapping

The UML/XSD Mapping for the "VariableString" Derived Class is given in Table 2.4.36.

Table 2.4.36 UML/XSD Mapping for the "VariableString" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
VariableString | Derived | PT: String | - N/A - | VariableString.Type | SimpleType
pattern | Attribute | PT: String | [1] | [ No XML instance visibility ] | Restriction (Pattern) on the Primitive Type.

The syntax and semantics for the Derived Class UML/XSD mapping representations is described in Appendix A1.2.

### 2.4.37 Weight Derived Class Mapping

The UML/XSD Mapping for the "Weight" Derived Class is given in Table 2.4.37.

Table 2.4.37 UML/XSD Mapping for the "Weight" Derived Class.
Information Model Details | XSD Binding Details
--- | ---
Name | UML Artefact | Data Type | Multiplicity | Name | Type
Weight | Derived | PT: Empty | - N/A - | Weight.Type | ComplexType
identifier | Characteristic | DT: Identifier (PT: NCName) | [1] | identifier | Attribute (Global)
value | Characteristic | PT: Double | [1] | value | Attribute (Global)

## 2.5 Enumerated Class UML/XSD Mapping

The definition of the set of enumerated data-types used in this specification is given in Table 2.5. The syntax and semantics for the Enumerated Class UML/XSD mapping representations is described in Appendix A1.3.

Table 2.5 The UML/XSD Map Enumerated Class Definitions.
Enumeration Class Name | Description
--- | ---
ARIALiveValue | Enumerated value set of: { off | polite | assertive }.
ARIAOrientationValue | Enumerated value set of: { vertical | horizontal }.
ARIARoleValue | Enumerated value set of: { article | columnheader | definition | directory | document | group | heading | img | list | listitem | math | note | presentation | region | row | rowgroup | rowheader | separator | toolbar | button | checkbox | gridcell | link | log | option | radio | slider | spinbutton | status | tab | tabpanel | textbox | timer | listbox | radiogroup | tablist | complementary | contentinfo }.
Align | Enumerated value set of: { left | center | right | justify | char }.
BaseType | Enumerated value set of: { boolean | directedPair | duration | file | float | identifier | integer | pair | point | string | uri }.
CORSSettings | Enumerated value set of: { anonymous | use-credentials }.
Cardinality | Enumerated value set of: { multiple | ordered | record | single }.
DIR | Enumerated value set of: { ltr | rtl | auto }.
ExternalScored | Enumerated value set of: { externalMachine | human }.
MathConstantNames | Enumerated value set of: { pi | e }.
MathOperatorName | Enumerated value set of: { sin | cos | tan | sec | csc | cot | asin | acos | atan | atan2 | asec | acsc | acot | sinh | cosh | tanh | sech | csch | coth | log | ln | exp | abs | signum | floor | ceil | toDegrees | toRadians }.
NavigationMode | Enumerated value set of: { linear | nonlinear }.
Orientation | Enumerated value set of: { horizontal | vertical }.
ParamType | Enumerated value set of: { DATA | REF }.
RoundingMode | Enumerated value set of: { decimalPlaces | significantFigures }.
Shape | Enumerated value set of: { circle | default | ellipse | poly | rect }.
ShowHide | Enumerated value set of: { show | hide }.
StatsOperatorName | Enumerated value set of: { mean | sampleVariance | sampleSD | popVariance | popSD }.
SubmissionMode | Enumerated value set of: { individual | simultaneous }.
TableCellScope | Enumerated value set of: { col | colgroup | row | rowgroup }.
TestFeedbackAccess | Enumerated value set of: { atEnd | during }.
TextFormat | Enumerated value set of: { plain | preformatted | xhtml }.
ToleranceMode | Enumerated value set of: { absolute | exact | relative }.
Valign | Enumerated value set of: { bottom | middle | top | baseline }.

## 2.6 Enumerated List Class UML/XSD Mapping

The definition of the set of enumerated data-types used in this specification is given in Table 2.6. The syntax and semantics for the Enumerated List Class UML/XSD mapping representations is described in Appendix A1.3.

Table 2.6 The UML/XSD Map Enumerated List Class Definitions.
Enumeration List Class Name | Description
--- | ---
View | Enumerated List value set of: { author | candidate | proctor | scorer | testConstructor | tutor }.

## 2.7 List Class UML/XSD Mapping

The definition of the set of list data-types used in this specification is given in Table 2.7. The syntax and semantics for the List Class UML/XSD mapping representations is described in Appendix A1.4.

Table 2.7 The UML/XSD Map List Class Definitions.
List Class Name | Description
--- | ---
IdentifierList | This is a list of values each of data-type: NCName
IntegerList | This is a list of values each of data-type: Int
StringList | This is a list of values each of data-type: String
ToleranceList | This is a list of values each of data-type: String, Double

## 2.8 Union Class UML/XSD Mapping

The definition of the set of union data-types used in this specification is given in Table 2.8. The syntax and semantics for the Union Class UML/XSD mapping representations is described in Appendix A1.4.

Table 2.8 The UML/XSD Map Union Class Definitions.
Union Class Name | Description
--- | ---
FloatOrVariableRef | This is a value from one of the set of data-types: Double, VariableString
IntOrIdentifier | This is a value from one of the set of data-types: NCName, Int
IntegerOrVariableRef | This is a value from one of the set of data-types: Integer, VariableString
StringOrVariableRef | This is a value from one of the set of data-types: String, EncVariableString

## 2.9 Primitive Type UML/XSD Mapping

The definition of the set of primitive data-types used in this specification is given in Table 2.9. The syntax and semantics for the Primitive Type UML/XSD mapping representations is described in Appendix A1.5.

Table 2.9 The UML/XSD Map Primitive Type Definitions.
Primitive Type Name | Description
--- | ---
AnyTypeLax | This allows any extension in any namespace. When the extension is applied to elements the XSD code is:
    <xs:group name="grpAnyLax.any">
        <xs:annotation>
            <xs:documentation>
                Any namespaced element from any namespace may be included within an "any" element.
                The namespace for the imported element must be defined in the instance, and the schema must be imported.
                The extension has a definition of "lax" i.e. validation is not required if the XSD for the extension is not available.
            </xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:any namespace = "##any" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded" />
        </xs:sequence>
    </xs:group>
The XSD code for the extension of attributes is:
    <xs:anyAttribute namespace = "##any" processContents = "lax" />
AnyURI | This is mapped to the XML "xs:anyURI" data-type.
Base | This is mapped to the "xml:base" structure. This is used to provide a file base location offset.
Boolean | This is mapped to the XML "xs:boolean" data-type.
Double | This is mapped to the XML "xs:double" data-type.
Empty | This is used to denote an element that will not contain a value i.e. it is empty. Within the XSD a Special Data-type is declared called "EmptyPrimitiveType.Type". This ensures that the associated element has NO children (but it will have XML attributes). The XSD code is:
    <xs:complexType name="EmptyPrimitiveType.Type">
        <xs:complexContent>
            <xs:restriction base="xs:anyType" />
        </xs:complexContent>
    </xs:complexType>
ID | This is mapped to the XML "xs:ID" data-type. This is only permitted for XML attributes.
IDREF | This is mapped to the XML "xs:IDREF" data-type. This is only permitted for XML attributes.
IDREFS | This is mapped to the XML "xs:IDREFS" data-type. This is only permitted for XML attributes.
Int | This is mapped to the XML "xs:int" data-type.
Integer | This is mapped to the XML "xs:integer" data-type.
Language | This is mapped to the "xml:language" structure. This is used to indicate the associated language.
NCName | This is mapped to the XML "xs:NCName" data-type.
Namespace | This provides a strict namespace-based extension facility. When the extension is applied to elements the XSD code is:
    <xs:group name="grpStrict.any">
        <xs:annotation>
            <xs:documentation>
                Any namespaced element from any namespace, other than the target namespace, may be included within an "any" element.
                The namespace for the imported element must be defined in the instance, and the schema must be imported.
                The extension has a definition of "strict" i.e. they must have their own namespace.
            </xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:any namespace = "##other" processContents = "strict" minOccurs = "0" maxOccurs = "unbounded" />
        </xs:sequence>
    </xs:group>
The XSD code for the extension of attributes is:
    <xs:anyAttribute namespace = "##other" processContents = "strict" />
NamespaceLax | This provides a lax namespace-based extension facility.
    <xs:group name="grpLax.any">
        <xs:annotation>
            <xs:documentation>
                Any namespaced element from any namespace, other than the target namespace, may be included within an "any" element.
                The namespace for the imported element should be defined in the instance, and the schema, if available,should be imported.
                The extension has a definition of "lax" i.e. validation is not required if the XSD for the extension is not available.
            </xs:documentation>
        </xs:annotation>
        <xs:sequence>
            <xs:any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded" />
        </xs:sequence>
    </xs:group>
The XSD code for the extension of attributes is:
    <xs:anyAttribute namespace = "##other" processContents = "lax" />
NonNegativeInteger | This is mapped to the XML "xs:nonNegativeInteger" data-type.
NormalizedString | This is mapped to the XML "xs:normalizedString" data-type.
String | This is mapped to the XML "xs:string" data-type.

toc | top

# 3. Files and Namespaces

## 3.1 Target Namespace Details

Target Namespace: | http://www.imsglobal.org/xsd/imsqti_v2p2
Schema Location: | http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqti_v2p2p2.xsd

## 3.2 Imported Namespace Details

Feature: | APIPAccessibility
Namespace: | http://www.imsglobal.org/xsd/apip/apipv1p0/imsapip_qtiv1p0
Schema Location: | http://www.imsglobal.org/profile/apip/apipv1p0/apipv1p0_qtiextv2p2_v1p0p1.xsd
Prefix: | apip

Feature: | HTML5
Namespace: | http://www.imsglobal.org/xsd/imsqtiv2p2_html5_v1p0
Schema Location: | http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd
Prefix: | qh5

Feature: | Include
Namespace: | http://www.w3.org/2001/XInclude
Schema Location: | http://www.imsglobal.org/xsd/w3/2001/XInclude.xsd
Prefix: | xi

Feature: | MathML2
Namespace: | http://www.w3.org/1998/Math/MathML
Schema Location: | http://www.w3.org/Math/XMLSchema/mathml2/mathml2.xsd
Prefix: | m2

Feature: | MathML3
Namespace: | http://www.w3.org/2010/Math/MathML
Schema Location: | http://www.imsglobal.org/xsd/w3/Math/XMLSchema/mathml3/mathml3.xsd
Prefix: | m3

Feature: | SSMLv1p1
Namespace: | http://www.w3.org/2010/10/synthesis
Schema Location: | http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd
Prefix: | ssml11

## 3.3 Implicit Namespace Details

Feature: | XSD Language
Namespace: | http://www.w3.org/2001/XMLSchema
Schema Location: | XML Processor Resolved.
Prefix: | xs

Feature: | XML Features
Namespace: | http://www.w3.org/XML/1998/namespace
Schema Location: | http://www.imsglobal.org/xsd/w3/2001/xml.xsd
Prefix: | xml

Feature: | Schematron Rules
Namespace: | http://purl.oclc.org/dsdl/schematron
Schema Location: | Schematron Processor Resolved.
Prefix: | sch

toc | top

# 4. Description of the XSD

## 4.1 Root Element Descriptions

The syntax and semantics for the Root Element XSD representations is described in Appendix A1.6.

### 4.1.1 "assessmentItem" Root Element Description

The XSD description for the "assessmentItem" Root Element is given in Table 4.1.1.

Table 4.1.1 XSD description for the "assessmentItem" Root Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | AssessmentItem.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Model | responseDeclaration{0..*}, outcomeDeclaration{0..*}, templateDeclaration{0..*}, templateProcessing{0..1}, assessmentStimulusRef{0..*}, stylesheet{0..*}, itemBody{0..1}, responseProcessing{0..1}, modalFeedback{0..*}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | xs:normalizedString | No | Global | Required | -
title | xs:normalizedString | No | Global | Required | -
label | xs:normalizedString | No | Global | Optional | -
xml:lang | [ Import ] | No | Global | Optional | -
toolName | xs:normalizedString | No | Global | Optional | -
toolVersion | xs:normalizedString | No | Global | Optional | -
adaptive | xs:boolean | No | Global | Optional | false
timeDependent | xs:boolean | No | Global | Required | -
Schematron Rules |
Explicit Rules | RULE_SET_GENERAL_1-RULE GENERAL 1a-Assertion 1: "count(descendant::qti:numberCorrect) = 0" RULE_SET_GENERAL_1-RULE GENERAL 1a-Assertion 2: "count(descendant::qti:numberIncorrect) = 0" RULE_SET_GENERAL_1-RULE GENERAL 1a-Assertion 3: "count(descendant::qti:numberPresented) = 0" RULE_SET_GENERAL_1-RULE GENERAL 1a-Assertion 4: "count(descendant::qti:numberResponded) = 0" RULE_SET_GENERAL_1-RULE GENERAL 1a-Assertion 5: "count(descendant::qti:numberSelected) = 0" RULE_SET_GENERAL_1-RULE GENERAL 1a-Assertion 6: "count(descendant::qti:outcomeMinimum) = 0" RULE_SET_GENERAL_1-RULE GENERAL 1a-Assertion 7: "count(descendant::qti:outcomeMaximum) = 0" RULE_SET_GENERAL_1-RULE GENERAL 1a-Assertion 8: "count(descendant::qti:testVariables) = 0"
Source |
    <xs:element name="assessmentItem" type="AssessmentItem.Type" />

### 4.1.2 "assessmentSection" Root Element Description

The XSD description for the "assessmentSection" Root Element is given in Table 4.1.2.

Table 4.1.2 XSD description for the "assessmentSection" Root Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | AssessmentSection.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AssessmentSection.Type, TestPart.Type
Model | preCondition{0..*}, branchRule{0..*}, itemSessionControl{0..1}, timeLimits{0..1}, selection{0..1}, ordering{0..1}, rubricBlock{0..*}, ( xi:include{1..1} | assessmentItemRef{1..1} | assessmentSection{1..1} | assessmentSectionRef{1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | xs:normalizedString | No | Global | Required | -
required | xs:boolean | No | Global | Optional | false
fixed | xs:boolean | No | Global | Optional | false
title | xs:normalizedString | No | Global | Required | -
visible | xs:boolean | No | Global | Required | -
keepTogether | xs:boolean | No | Global | Optional | true
Schematron Rules |
Explicit Rules | RULE_SET_GENERAL_2-RULE GENERAL 2c-Assertion 1: "not(@identifier=preceding-sibling::qti:assessmentSection/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2c-Assertion 2: "not(@identifier=descendant::qti:assessmentSection/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2c-Assertion 3: "not(@identifier=descendant::qti:assessmentSectionRef/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2c-Assertion 4: "not(@identifier=descendant::qti:assessmentItemRef/@identifier)"
Source |
    <xs:element name="assessmentSection" type="AssessmentSection.Type" />

### 4.1.3 "assessmentStimulus" Root Element Description

The XSD description for the "assessmentStimulus" Root Element is given in Table 4.1.3.

Table 4.1.3 XSD description for the "assessmentStimulus" Root Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | AssessmentStimulus.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Model | stylesheet{0..*}, stimulusBody{1..1}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | xs:normalizedString | No | Global | Required | -
title | xs:normalizedString | No | Global | Required | -
label | xs:normalizedString | No | Global | Optional | -
xml:lang | [ Import ] | No | Global | Optional | -
toolName | xs:normalizedString | No | Global | Optional | -
toolVersion | xs:normalizedString | No | Global | Optional | -
Source |
    <xs:element name="assessmentStimulus" type="AssessmentStimulus.Type" />

### 4.1.4 "assessmentTest" Root Element Description

The XSD description for the "assessmentTest" Root Element is given in Table 4.1.4.

Table 4.1.4 XSD description for the "assessmentTest" Root Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | AssessmentTest.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Model | outcomeDeclaration{0..*}, timeLimits{0..1}, stylesheet{0..*}, testPart{1..*}, outcomeProcessing{0..1}, testFeedback{0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | xs:normalizedString | No | Global | Required | -
title | xs:normalizedString | No | Global | Required | -
toolName | xs:normalizedString | No | Global | Optional | -
toolVersion | xs:normalizedString | No | Global | Optional | -
Schematron Rules |
Explicit Rules | RULE_SET_GENERAL_2-RULE GENERAL 2a-Assertion 1: "not(@identifier=qti:testPart/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2a-Assertion 2: "not(@identifier=qti:testPart/descendant::qti:assessmentSection/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2a-Assertion 3: "not(@identifier=qti:testPart/qti:assessmentSectionRef/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2a-Assertion 4: "not(@identifier=qti:testPart/descendant::qti:assessmentSection/qti:assessmentSectionRef/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2a-Assertion 5: "not(@identifier=qti:testPart/descendant::qti:assessmentSection/qti:assessmentItemRef/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2b-Assertion 1: "not(@identifier=preceding-sibling::qti:testPart/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2b-Assertion 2: "not(@identifier=descendant::qti:assessmentSection/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2b-Assertion 3: "not(@identifier=qti:assessmentSectionRef/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2b-Assertion 4: "not(@identifier=descendant::qti:assessmentSection/qti:assessmentSectionRef/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2b-Assertion 5: "not(@identifier=descendant::qti:assessmentSection/qti:assessmentItemRef/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2c-Assertion 1: "not(@identifier=preceding-sibling::qti:assessmentSection/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2c-Assertion 2: "not(@identifier=descendant::qti:assessmentSection/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2c-Assertion 3: "not(@identifier=descendant::qti:assessmentSectionRef/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2c-Assertion 4: "not(@identifier=descendant::qti:assessmentItemRef/@identifier)"
Source |
    <xs:element name="assessmentTest" type="AssessmentTest.Type" />

### 4.1.5 "outcomeDeclaration" Root Element Description

The XSD description for the "outcomeDeclaration" Root Element is given in Table 4.1.5.

Table 4.1.5 XSD description for the "outcomeDeclaration" Root Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | OutcomeDeclaration.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AssessmentItem.Type, AssessmentTest.Type
Model | defaultValue{0..1}, ( matchTable{1..1} | interpolationTable{1..1} ){0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
cardinality | [ Enumeration ] | No | Global | Required | -
baseType | [ Enumeration ] | No | Global | Optional | -
view | Enumerated List of View.Type | No | Global | Optional | -
interpretation | xs:string | No | Global | Optional | -
longInterpretation | xs:anyURI | No | Global | Optional | -
normalMaximum | NonNegativeDouble.Type | No | Global | Optional | -
normalMinimum | xs:double | No | Global | Optional | -
masteryValue | xs:double | No | Global | Optional | -
externalScored | [ Enumeration ] | No | Global | Optional | -
variableIdentifierRef | UniqueIdentifierRef.Type | No | Global | Optional | -
Schematron Rules |
Explicit Rules | RULE_SET_SPECIFIC_CLASS_1-RULE SPECIFIC CLASS 1a-Assertion 1: "not(number(@masteryValue) < number(@normalMinimum))" RULE_SET_SPECIFIC_CLASS_1-RULE SPECIFIC CLASS 1a-Assertion 2: "not(number(@masteryValue) > number(@normalMaximum))"
Source |
    <xs:element name="outcomeDeclaration" type="OutcomeDeclaration.Type" />

### 4.1.6 "responseProcessing" Root Element Description

The XSD description for the "responseProcessing" Root Element is given in Table 4.1.6.

Table 4.1.6 XSD description for the "responseProcessing" Root Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | ResponseProcessing.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AssessmentItem.Type
Model | ( xi:include{1..1} | responseCondition{1..1} | responseProcessingFragment{1..1} | setOutcomeValue{1..1} | exitResponse{1..1} | lookupOutcomeValue{1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
template | xs:anyURI | No | Global | Optional | -
templateLocation | xs:anyURI | No | Global | Optional | -
Schematron Rules |
Explicit Rules | RULE_SET_GENERAL_1-RULE GENERAL 1a-Assertion 1: "count(descendant::qti:numberCorrect) = 0" RULE_SET_GENERAL_1-RULE GENERAL 1a-Assertion 2: "count(descendant::qti:numberIncorrect) = 0" RULE_SET_GENERAL_1-RULE GENERAL 1a-Assertion 3: "count(descendant::qti:numberPresented) = 0" RULE_SET_GENERAL_1-RULE GENERAL 1a-Assertion 4: "count(descendant::qti:numberResponded) = 0" RULE_SET_GENERAL_1-RULE GENERAL 1a-Assertion 5: "count(descendant::qti:numberSelected) = 0" RULE_SET_GENERAL_1-RULE GENERAL 1a-Assertion 6: "count(descendant::qti:outcomeMinimum) = 0" RULE_SET_GENERAL_1-RULE GENERAL 1a-Assertion 7: "count(descendant::qti:outcomeMaximum) = 0" RULE_SET_GENERAL_1-RULE GENERAL 1a-Assertion 8: "count(descendant::qti:testVariables) = 0"
Source |
    <xs:element name="responseProcessing" type="ResponseProcessing.Type" />

## 4.2 Global Element Descriptions

The syntax and semantics for the Global Element XSD representations is described in Appendix A1.6.

### 4.2.1 "a" Global Element Description

The XSD description for the "a" Global Element is given in Table 4.2.1.

Table 4.2.1 XSD description for the "a" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | A.Type
Type Hierarchy | BaseSequenceXBase.Type ^---A.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
href | xs:anyURI | No | Global | Required | -
type | MimeType.Type | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="a" type="A.Type" />

### 4.2.2 "abbr" Global Element Description

The XSD description for the "abbr" Global Element is given in Table 4.2.2.

Table 4.2.2 XSD description for the "abbr" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="abbr" type="HTMLText.Type" />

### 4.2.3 "acronym" Global Element Description

The XSD description for the "acronym" Global Element is given in Table 4.2.3.

Table 4.2.3 XSD description for the "acronym" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="acronym" type="HTMLText.Type" />

### 4.2.4 "address" Global Element Description

The XSD description for the "address" Global Element is given in Table 4.2.4.

Table 4.2.4 XSD description for the "address" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="address" type="HTMLText.Type" />

### 4.2.5 "and" Global Element Description

The XSD description for the "and" Global Element is given in Table 4.2.5.

Table 4.2.5 XSD description for the "and" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Logic1toMany.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..*}
Attributes | None.
Source |
    <xs:element name="and" type="Logic1toMany.Type" />

### 4.2.6 "anyN" Global Element Description

The XSD description for the "anyN" Global Element is given in Table 4.2.6.

Table 4.2.6 XSD description for the "anyN" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | AnyN.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
min | Union [ IntegerOrVariableRef ] | No | Global | Required | -
max | Union [ IntegerOrVariableRef ] | No | Global | Required | -
Source |
    <xs:element name="anyN" type="AnyN.Type" />

### 4.2.7 "apip:apipAccessibility" Global Element Description

The XSD description for the "apip:apipAccessibility" Global Element is given in Table 4.2.7.

Table 4.2.7 XSD description for the "apip:apipAccessibility" Global Element.
Namespace | http://www.imsglobal.org/xsd/apip/apipv1p0/imsapip_qtiv1p0
Diagram |
Type | [ Imported ( APIPAccessibility ) ]
Used by |
ComplexTypes | AssessmentItem.Type, AssessmentStimulus.Type, FeedbackBlock.Type, ModalFeedback.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/profile/apip/apipv1p0/apipv1p0_qtiextv2p2_v1p0p1.xsd).
Attributes | See import XSD (http://www.imsglobal.org/profile/apip/apipv1p0/apipv1p0_qtiextv2p2_v1p0p1.xsd).
Source | See import XSD (http://www.imsglobal.org/profile/apip/apipv1p0/apipv1p0_qtiextv2p2_v1p0p1.xsd).

### 4.2.8 "areaMapEntry" Global Element Description

The XSD description for the "areaMapEntry" Global Element is given in Table 4.2.8.

Table 4.2.8 XSD description for the "areaMapEntry" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | AreaMapEntry.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---AreaMapEntry.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | unbounded
Used by |
ComplexTypes | AreaMapping.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
shape | [ Enumeration ] | No | Global | Required | -
coords | Coords.Type | No | Global | Required | -
mappedValue | xs:double | No | Global | Required | -
Source |
    <xs:element name="areaMapEntry" type="AreaMapEntry.Type" />

### 4.2.9 "areaMapping" Global Element Description

The XSD description for the "areaMapping" Global Element is given in Table 4.2.9.

Table 4.2.9 XSD description for the "areaMapping" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | AreaMapping.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | ResponseDeclaration.Type
Model | areaMapEntry{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
lowerBound | xs:double | No | Global | Optional | -
upperBound | xs:double | No | Global | Optional | -
defaultValue | xs:double | No | Global | Optional | 0
Source |
    <xs:element name="areaMapping" type="AreaMapping.Type" />

### 4.2.10 "qh5:article" Global Element Description

The XSD description for the "qh5:article" Global Element is given in Table 4.2.10.

Table 4.2.10 XSD description for the "qh5:article" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqtiv2p2_html5_v1p0
Diagram |
Type | [ Imported ( HTML5 ) ]
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).

### 4.2.11 "qh5:aside" Global Element Description

The XSD description for the "qh5:aside" Global Element is given in Table 4.2.11.

Table 4.2.11 XSD description for the "qh5:aside" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqtiv2p2_html5_v1p0
Diagram |
Type | [ Imported ( HTML5 ) ]
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).

### 4.2.12 "assessmentItemRef" Global Element Description

The XSD description for the "assessmentItemRef" Global Element is given in Table 4.2.12.

Table 4.2.12 XSD description for the "assessmentItemRef" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | AssessmentItemRef.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AssessmentSection.Type
Model | preCondition{0..*}, branchRule{0..*}, itemSessionControl{0..1}, timeLimits{0..1}, variableMapping{0..*}, weight{0..*}, templateDefault{0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | xs:normalizedString | No | Global | Required | -
required | xs:boolean | No | Global | Optional | false
fixed | xs:boolean | No | Global | Optional | false
href | xs:anyURI | No | Global | Required | -
category | List of IdentifierList.Type | No | Global | Optional | -
Source |
    <xs:element name="assessmentItemRef" type="AssessmentItemRef.Type" />

### 4.2.13 "assessmentSectionRef" Global Element Description

The XSD description for the "assessmentSectionRef" Global Element is given in Table 4.2.13.

Table 4.2.13 XSD description for the "assessmentSectionRef" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | AssessmentSectionRef.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---AssessmentSectionRef.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AssessmentSection.Type, TestPart.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | xs:normalizedString | No | Global | Required | -
href | xs:anyURI | No | Global | Required | -
Source |
    <xs:element name="assessmentSectionRef" type="AssessmentSectionRef.Type" />

### 4.2.14 "assessmentStimulusRef" Global Element Description

The XSD description for the "assessmentStimulusRef" Global Element is given in Table 4.2.14.

Table 4.2.14 XSD description for the "assessmentStimulusRef" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | AssessmentStimulusRef.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---AssessmentStimulusRef.Type
Properties |
Content | simple
MinOccurs | 0
MaxOccurs | unbounded
Used by |
ComplexTypes | AssessmentItem.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | xs:normalizedString | No | Global | Required | -
href | xs:anyURI | No | Global | Required | -
Source |
    <xs:element name="assessmentStimulusRef" type="AssessmentStimulusRef.Type" />

### 4.2.15 "associableHotspot" Global Element Description

The XSD description for the "associableHotspot" Global Element is given in Table 4.2.15.

Table 4.2.15 XSD description for the "associableHotspot" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | AssociableHotspot.Type
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---AssociableHotspot.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | unbounded
Mixed | false
Used by |
ComplexTypes | GraphicAssociateInteraction.Type, GraphicGapMatchInteraction.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | show
matchGroup | List of IdentifierList.Type | No | Global | Optional | -
shape | [ Enumeration ] | No | Global | Required | -
coords | Coords.Type | No | Global | Required | -
hotspotLabel | xs:string | No | Global | Optional | -
matchMax | xs:nonNegativeInteger | No | Global | Required | -
matchMin | xs:nonNegativeInteger | No | Global | Optional | 0
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION-RELATED_3-RULE INTERACTION-RELATED 3a-Assertion 1: "not(not(number(@matchMax)=0) and number(@matchMax) < number(@matchMin))"
Source |
    <xs:element name="associableHotspot" type="AssociableHotspot.Type" />

### 4.2.16 "associateInteraction" Global Element Description

The XSD description for the "associateInteraction" Global Element is given in Table 4.2.16.

Table 4.2.16 XSD description for the "associateInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | AssociateInteraction.Type
Type Hierarchy | BasePromptInteraction.Type ^---AssociateInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, LI.Type, StimulusBody.Type, TDH.Type
Model | prompt{0..1}, simpleAssociableChoice{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
shuffle | xs:boolean | No | Global | Optional | false
maxAssociations | xs:nonNegativeInteger | No | Global | Optional | 1
minAssociations | xs:nonNegativeInteger | No | Global | Optional | 0
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_12-RULE INTERACTION 12a-Assertion 1: "not(not(number(@maxAssociations)=0) and number(@maxAssociations) < number(@minAssociations))"
Source |
    <xs:element name="associateInteraction" type="AssociateInteraction.Type" />

### 4.2.17 "qh5:audio" Global Element Description

The XSD description for the "qh5:audio" Global Element is given in Table 4.2.17.

Table 4.2.17 XSD description for the "qh5:audio" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqtiv2p2_html5_v1p0
Diagram |
Type | [ Imported ( HTML5 ) ]
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, MediaInteraction.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).

### 4.2.18 "ssml11:audio" Global Element Description

The XSD description for the "ssml11:audio" Global Element is given in Table 4.2.18.

Table 4.2.18 XSD description for the "ssml11:audio" Global Element.
Namespace | http://www.w3.org/2010/10/synthesis
Diagram |
Type | [ Imported ( SSMLv1p1 ) ]
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).

### 4.2.19 "b" Global Element Description

The XSD description for the "b" Global Element is given in Table 4.2.19.

Table 4.2.19 XSD description for the "b" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="b" type="HTMLText.Type" />

### 4.2.20 "baseValue" Global Element Description

The XSD description for the "baseValue" Global Element is given in Table 4.2.20.

Table 4.2.20 XSD description for the "baseValue" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | BaseValue.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | N/A
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
baseType | [ Enumeration ] | No | Global | Required | -
Source |
    <xs:element name="baseValue" type="BaseValue.Type" />

### 4.2.21 "qh5:bdi" Global Element Description

The XSD description for the "qh5:bdi" Global Element is given in Table 4.2.21.

Table 4.2.21 XSD description for the "qh5:bdi" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqtiv2p2_html5_v1p0
Diagram |
Type | [ Imported ( HTML5 ) ]
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).

### 4.2.22 "bdo" Global Element Description

The XSD description for the "bdo" Global Element is given in Table 4.2.22.

Table 4.2.22 XSD description for the "bdo" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | BDO.Type
Type Hierarchy | BaseSequence.Type ^---BDO.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
title | xs:string | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="bdo" type="BDO.Type" />

### 4.2.23 "big" Global Element Description

The XSD description for the "big" Global Element is given in Table 4.2.23.

Table 4.2.23 XSD description for the "big" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="big" type="HTMLText.Type" />

### 4.2.24 "blockquote" Global Element Description

The XSD description for the "blockquote" Global Element is given in Table 4.2.24.

Table 4.2.24 XSD description for the "blockquote" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | BlockQuote.Type
Type Hierarchy | BaseSequenceXBase.Type ^---BlockQuote.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | ( positionObjectStage{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | feedbackBlock{1..1} | templateBlock{1..1} | infoControl{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | hr{1..1} | blockquote{1..1} | table{1..1} | div{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:audio{1..1} | qh5:figure{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:video{1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
cite | xs:anyURI | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="blockquote" type="BlockQuote.Type" />

### 4.2.25 "br" Global Element Description

The XSD description for the "br" Global Element is given in Table 4.2.25.

Table 4.2.25 XSD description for the "br" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | BR.Type
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---BR.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="br" type="BR.Type" />

### 4.2.26 "branchRule" Global Element Description

The XSD description for the "branchRule" Global Element is given in Table 4.2.26.

Table 4.2.26 XSD description for the "branchRule" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | BranchRule.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | unbounded
Mixed | false
Used by |
ComplexTypes | AssessmentItemRef.Type, AssessmentSection.Type, TestPart.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
target | Identifier.Type | No | Global | Required | -
Source |
    <xs:element name="branchRule" type="BranchRule.Type" />

### 4.2.27 "ssml11:break" Global Element Description

The XSD description for the "ssml11:break" Global Element is given in Table 4.2.27.

Table 4.2.27 XSD description for the "ssml11:break" Global Element.
Namespace | http://www.w3.org/2010/10/synthesis
Diagram |
Type | [ Imported ( SSMLv1p1 ) ]
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).

### 4.2.28 "caption" Global Element Description

The XSD description for the "caption" Global Element is given in Table 4.2.28.

Table 4.2.28 XSD description for the "caption" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Caption.Type
Type Hierarchy | BaseSequence.Type ^---Caption.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | Table.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="caption" type="Caption.Type" />

### 4.2.29 "choiceInteraction" Global Element Description

The XSD description for the "choiceInteraction" Global Element is given in Table 4.2.29.

Table 4.2.29 XSD description for the "choiceInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | ChoiceInteraction.Type
Type Hierarchy | BasePromptInteraction.Type ^---ChoiceInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, LI.Type, StimulusBody.Type, TDH.Type
Model | prompt{0..1}, simpleChoice{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
shuffle | xs:boolean | No | Global | Optional | false
maxChoices | xs:nonNegativeInteger | No | Global | Optional | 1
minChoices | xs:nonNegativeInteger | No | Global | Optional | 0
orientation | [ Enumeration ] | No | Global | Optional | vertical
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_02-RULE INTERACTION 2a-Assertion 1: "not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))"
Source |
    <xs:element name="choiceInteraction" type="ChoiceInteraction.Type" />

### 4.2.30 "cite" Global Element Description

The XSD description for the "cite" Global Element is given in Table 4.2.30.

Table 4.2.30 XSD description for the "cite" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="cite" type="HTMLText.Type" />

### 4.2.31 "code" Global Element Description

The XSD description for the "code" Global Element is given in Table 4.2.31.

Table 4.2.31 XSD description for the "code" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="code" type="HTMLText.Type" />

### 4.2.32 "col" Global Element Description

The XSD description for the "col" Global Element is given in Table 4.2.32.

Table 4.2.32 XSD description for the "col" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Col.Type
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---Col.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | unbounded
Mixed | false
Used by |
ComplexTypes | ColGroup.Type, Table.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
span | xs:int | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="col" type="Col.Type" />

### 4.2.33 "colgroup" Global Element Description

The XSD description for the "colgroup" Global Element is given in Table 4.2.33.

Table 4.2.33 XSD description for the "colgroup" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | ColGroup.Type
Type Hierarchy | BaseSequence.Type ^---ColGroup.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | unbounded
Mixed | false
Used by |
ComplexTypes | Table.Type
Model | col{0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
span | xs:int | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="colgroup" type="ColGroup.Type" />

### 4.2.34 "containerSize" Global Element Description

The XSD description for the "containerSize" Global Element is given in Table 4.2.34.

Table 4.2.34 XSD description for the "containerSize" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicSingle.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes | None.
Source |
    <xs:element name="containerSize" type="LogicSingle.Type" />

### 4.2.35 "contains" Global Element Description

The XSD description for the "contains" Global Element is given in Table 4.2.35.

Table 4.2.35 XSD description for the "contains" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicPair.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes | None.
Source |
    <xs:element name="contains" type="LogicPair.Type" />

### 4.2.36 "correct" Global Element Description

The XSD description for the "correct" Global Element is given in Table 4.2.36.

Table 4.2.36 XSD description for the "correct" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Correct.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---Correct.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:element name="correct" type="Correct.Type" />

### 4.2.37 "correctResponse" Global Element Description

The XSD description for the "correctResponse" Global Element is given in Table 4.2.37.

Table 4.2.37 XSD description for the "correctResponse" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | CorrectResponse.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | ResponseDeclaration.Type
Model | value{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
interpretation | xs:string | No | Global | Optional | -
Source |
    <xs:element name="correctResponse" type="CorrectResponse.Type" />

### 4.2.38 "customInteraction" Global Element Description

The XSD description for the "customInteraction" Global Element is given in Table 4.2.38.

Table 4.2.38 XSD description for the "customInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | CustomInteraction.Type
Type Hierarchy | BaseSequenceFull.Type ^---CustomInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | A.Type, BlockQuote.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, HTMLText.Type, ItemBody.Type, LI.Type, Q.Type, StimulusBody.Type, TDH.Type
Model | Namespace-based Extension
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
##other | [ Namespace Extension ] | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="customInteraction" type="CustomInteraction.Type" />

### 4.2.39 "customOperator" Global Element Description

The XSD description for the "customOperator" Global Element is given in Table 4.2.39.

Table 4.2.39 XSD description for the "customOperator" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | CustomOperator.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){0..*}, { Namespace Extension }
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
class | Identifier.Type | No | Global | Optional | -
definition | xs:anyURI | No | Global | Optional | -
##other | [ Namespace Extension ] | No | Global | Optional | -
Source |
    <xs:element name="customOperator" type="CustomOperator.Type" />

### 4.2.40 "dd" Global Element Description

The XSD description for the "dd" Global Element is given in Table 4.2.40.

Table 4.2.40 XSD description for the "dd" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | DD.Type
Type Hierarchy | BaseSequenceXBase.Type ^---DD.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | DL.Type
Model | ( printedVariable{1..1} | feedbackBlock{1..1} | hottext{1..1} | feedbackInline{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | textEntryInteraction{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="dd" type="DD.Type" />

### 4.2.41 "default" Global Element Description

The XSD description for the "default" Global Element is given in Table 4.2.41.

Table 4.2.41 XSD description for the "default" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Default.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---Default.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:element name="default" type="Default.Type" />

### 4.2.42 "defaultValue" Global Element Description

The XSD description for the "defaultValue" Global Element is given in Table 4.2.42.

Table 4.2.42 XSD description for the "defaultValue" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | DefaultValue.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | OutcomeDeclaration.Type, ResponseDeclaration.Type, TemplateDeclaration.Type
Model | value{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
interpretation | xs:normalizedString | No | Global | Optional | -
Source |
    <xs:element name="defaultValue" type="DefaultValue.Type" />

### 4.2.43 "delete" Global Element Description

The XSD description for the "delete" Global Element is given in Table 4.2.43.

Table 4.2.43 XSD description for the "delete" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicPair.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes | None.
Source |
    <xs:element name="delete" type="LogicPair.Type" />

### 4.2.44 "dfn" Global Element Description

The XSD description for the "dfn" Global Element is given in Table 4.2.44.

Table 4.2.44 XSD description for the "dfn" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="dfn" type="HTMLText.Type" />

### 4.2.45 "div" Global Element Description

The XSD description for the "div" Global Element is given in Table 4.2.45.

Table 4.2.45 XSD description for the "div" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Div.Type
Type Hierarchy | BaseSequenceXBase.Type ^---Div.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | ( positionObjectStage{1..1} | ( printedVariable{1..1} | feedbackBlock{1..1} | hottext{1..1} | feedbackInline{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | textEntryInteraction{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="div" type="Div.Type" />

### 4.2.46 "divide" Global Element Description

The XSD description for the "divide" Global Element is given in Table 4.2.46.

Table 4.2.46 XSD description for the "divide" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicPair.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes | None.
Source |
    <xs:element name="divide" type="LogicPair.Type" />

### 4.2.47 "dl" Global Element Description

The XSD description for the "dl" Global Element is given in Table 4.2.47.

Table 4.2.47 XSD description for the "dl" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | DL.Type
Type Hierarchy | BaseSequenceXBase.Type ^---DL.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | ( dd{1..1} | dt{1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="dl" type="DL.Type" />

### 4.2.48 "drawingInteraction" Global Element Description

The XSD description for the "drawingInteraction" Global Element is given in Table 4.2.48.

Table 4.2.48 XSD description for the "drawingInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | DrawingInteraction.Type
Type Hierarchy | BasePromptInteraction.Type ^---DrawingInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, LI.Type, StimulusBody.Type, TDH.Type
Model | prompt{0..1}, object{1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_15-RULE INTERACTION 15a-Assertion 1: "//qti:responseDeclaration[@baseType='file']"
Source |
    <xs:element name="drawingInteraction" type="DrawingInteraction.Type" />

### 4.2.49 "dt" Global Element Description

The XSD description for the "dt" Global Element is given in Table 4.2.49.

Table 4.2.49 XSD description for the "dt" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | DT.Type
Type Hierarchy | BaseSequenceXBase.Type ^---DT.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | DL.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="dt" type="DT.Type" />

### 4.2.50 "durationGTE" Global Element Description

The XSD description for the "durationGTE" Global Element is given in Table 4.2.50.

Table 4.2.50 XSD description for the "durationGTE" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicPair.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes | None.
Source |
    <xs:element name="durationGTE" type="LogicPair.Type" />

### 4.2.51 "durationLT" Global Element Description

The XSD description for the "durationLT" Global Element is given in Table 4.2.51.

Table 4.2.51 XSD description for the "durationLT" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicPair.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes | None.
Source |
    <xs:element name="durationLT" type="LogicPair.Type" />

### 4.2.52 "em" Global Element Description

The XSD description for the "em" Global Element is given in Table 4.2.52.

Table 4.2.52 XSD description for the "em" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="em" type="HTMLText.Type" />

### 4.2.53 "ssml11:emphasis" Global Element Description

The XSD description for the "ssml11:emphasis" Global Element is given in Table 4.2.53.

Table 4.2.53 XSD description for the "ssml11:emphasis" Global Element.
Namespace | http://www.w3.org/2010/10/synthesis
Diagram |
Type | [ Imported ( SSMLv1p1 ) ]
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).

### 4.2.54 "endAttemptInteraction" Global Element Description

The XSD description for the "endAttemptInteraction" Global Element is given in Table 4.2.54.

Table 4.2.54 XSD description for the "endAttemptInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | EndAttemptInteraction.Type
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---EndAttemptInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | A.Type, Caption.Type, DD.Type, DT.Type, Div.Type, HTMLText.Type, LI.Type, Q.Type, TDH.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | No | Global | Required | -
title | xs:string | No | Global | Required | -
countAttempt | xs:boolean | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_17-RULE INTERACTION 17a-Assertion 1: "//qti:responseDeclaration[@baseType='boolean']"
Source |
    <xs:element name="endAttemptInteraction" type="EndAttemptInteraction.Type" />

### 4.2.55 "equal" Global Element Description

The XSD description for the "equal" Global Element is given in Table 4.2.55.

Table 4.2.55 XSD description for the "equal" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Equal.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
toleranceMode | [ Enumeration ] | No | Global | Optional | exact
tolerance | List of ToleranceList.Type | No | Global | Optional | -
includeLowerBound | xs:boolean | No | Global | Optional | true
includeUpperBound | xs:boolean | No | Global | Optional | true
Source |
    <xs:element name="equal" type="Equal.Type" />

### 4.2.56 "equalRounded" Global Element Description

The XSD description for the "equalRounded" Global Element is given in Table 4.2.56.

Table 4.2.56 XSD description for the "equalRounded" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | EqualRounded.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
roundingMode | [ Enumeration ] | No | Global | Optional | significantFigures
figures | Union [ IntegerOrVariableRef ] | No | Global | Required | -
Source |
    <xs:element name="equalRounded" type="EqualRounded.Type" />

### 4.2.57 "exitResponse" Global Element Description

The XSD description for the "exitResponse" Global Element is given in Table 4.2.57.

Table 4.2.57 XSD description for the "exitResponse" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | EmptyPrimitiveType.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | ResponseElse.Type, ResponseIf.Type, ResponseProcessing.Type, ResponseProcessingFragment.Type
Model | N/A
Attributes | None.
Source |
    <xs:element name="exitResponse" type="EmptyPrimitiveType.Type" />

### 4.2.58 "exitTemplate" Global Element Description

The XSD description for the "exitTemplate" Global Element is given in Table 4.2.58.

Table 4.2.58 XSD description for the "exitTemplate" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | EmptyPrimitiveType.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | TemplateElse.Type, TemplateIf.Type, TemplateProcessing.Type
Model | N/A
Attributes | None.
Source |
    <xs:element name="exitTemplate" type="EmptyPrimitiveType.Type" />

### 4.2.59 "exitTest" Global Element Description

The XSD description for the "exitTest" Global Element is given in Table 4.2.59.

Table 4.2.59 XSD description for the "exitTest" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | EmptyPrimitiveType.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | OutcomeElse.Type, OutcomeIf.Type, OutcomeProcessing.Type, OutcomeProcessingFragment.Type
Model | N/A
Attributes | None.
Source |
    <xs:element name="exitTest" type="EmptyPrimitiveType.Type" />

### 4.2.60 "extendedTextInteraction" Global Element Description

The XSD description for the "extendedTextInteraction" Global Element is given in Table 4.2.60.

Table 4.2.60 XSD description for the "extendedTextInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | ExtendedTextInteraction.Type
Type Hierarchy | BasePromptInteraction.Type ^---ExtendedTextInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, LI.Type, StimulusBody.Type, TDH.Type
Model | None
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
base | xs:int | No | Global | Optional | 10
stringIdentifier | Identifier.Type | No | Global | Optional | -
expectedLength | xs:nonNegativeInteger | No | Global | Optional | -
patternMask | xs:string | No | Global | Optional | -
placeholderText | xs:string | No | Global | Optional | -
maxStrings | xs:nonNegativeInteger | No | Global | Optional | -
minStrings | xs:nonNegativeInteger | No | Global | Optional | 0
expectedLines | xs:nonNegativeInteger | No | Global | Optional | -
format | [ Enumeration ] | No | Global | Optional | plain
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_03-RULE INTERACTION 3a-Assertion 1: "not(@stringIdentifier=@responseIdentifier)"
Source |
    <xs:element name="extendedTextInteraction" type="ExtendedTextInteraction.Type" />

### 4.2.61 "feedbackBlock" Global Element Description

The XSD description for the "feedbackBlock" Global Element is given in Table 4.2.61.

Table 4.2.61 XSD description for the "feedbackBlock" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | FeedbackBlock.Type
Type Hierarchy | BaseSequenceXBase.Type ^---FeedbackBlock.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type
Model | ( ( positionObjectStage{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | feedbackBlock{1..1} | templateBlock{1..1} | infoControl{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | hr{1..1} | blockquote{1..1} | table{1..1} | div{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:audio{1..1} | qh5:figure{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:video{1..1} ){1..1} ){1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} | templateInline{1..1} | feedbackInline{1..1} | printedVariable{1..1} ){0..*}, stylesheet{0..*}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
outcomeIdentifier | Identifier.Type | No | Global | Required | -
identifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Optional | show
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="feedbackBlock" type="FeedbackBlock.Type" />

### 4.2.62 "feedbackInline" Global Element Description

The XSD description for the "feedbackInline" Global Element is given in Table 4.2.62.

Table 4.2.62 XSD description for the "feedbackInline" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | FeedbackInline.Type
Type Hierarchy | BaseSequenceXBase.Type ^---FeedbackInline.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, Q.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type
Model | ( ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | templateInline{1..1} | printedVariable{1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
outcomeIdentifier | Identifier.Type | No | Global | Required | -
identifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Optional | show
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="feedbackInline" type="FeedbackInline.Type" />

### 4.2.63 "fieldValue" Global Element Description

The XSD description for the "fieldValue" Global Element is given in Table 4.2.63.

Table 4.2.63 XSD description for the "fieldValue" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | FieldValue.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
fieldIdentifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:element name="fieldValue" type="FieldValue.Type" />

### 4.2.64 "qh5:figure" Global Element Description

The XSD description for the "qh5:figure" Global Element is given in Table 4.2.64.

Table 4.2.64 XSD description for the "qh5:figure" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqtiv2p2_html5_v1p0
Diagram |
Type | [ Imported ( HTML5 ) ]
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).

### 4.2.65 "qh5:footer" Global Element Description

The XSD description for the "qh5:footer" Global Element is given in Table 4.2.65.

Table 4.2.65 XSD description for the "qh5:footer" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqtiv2p2_html5_v1p0
Diagram |
Type | [ Imported ( HTML5 ) ]
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).

### 4.2.66 "gap" Global Element Description

The XSD description for the "gap" Global Element is given in Table 4.2.66.

Table 4.2.66 XSD description for the "gap" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Gap.Type
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---Gap.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | A.Type, Caption.Type, DT.Type, HTMLText.Type, Q.Type, TemplateInline.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | show
matchGroup | List of IdentifierList.Type | No | Global | Optional | -
required | xs:boolean | No | Global | Optional | false
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="gap" type="Gap.Type" />

### 4.2.67 "gapImg" Global Element Description

The XSD description for the "gapImg" Global Element is given in Table 4.2.67.

Table 4.2.67 XSD description for the "gapImg" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | GapImg.Type
Type Hierarchy | BaseSequence.Type ^---GapImg.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | GapMatchInteraction.Type, GraphicGapMatchInteraction.Type
Model | object{1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | show
matchGroup | List of IdentifierList.Type | No | Global | Optional | -
matchMax | xs:nonNegativeInteger | No | Global | Required | -
matchMin | xs:nonNegativeInteger | No | Global | Optional | 0
objectLabel | xs:string | No | Global | Optional | -
top | xs:normalizedString | No | Global | Optional | -
left | xs:normalizedString | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION-RELATED_2-RULE INTERACTION-RELATED 2a-Assertion 1: "not(not(number(@matchMax)=0) and number(@matchMax) < number(@matchMin))"
Source |
    <xs:element name="gapImg" type="GapImg.Type" />

### 4.2.68 "gapMatchInteraction" Global Element Description

The XSD description for the "gapMatchInteraction" Global Element is given in Table 4.2.68.

Table 4.2.68 XSD description for the "gapMatchInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | GapMatchInteraction.Type
Type Hierarchy | BasePromptInteraction.Type ^---GapMatchInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, LI.Type, StimulusBody.Type, TDH.Type
Model | prompt{0..1}, ( gapText{1..1} | gapImg{1..1} ){1..*}, ( feedbackBlock{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | hr{1..1} | blockquote{1..1} | table{1..1} | div{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:audio{1..1} | qh5:figure{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:video{1..1} ){1..1} ){1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
shuffle | xs:boolean | No | Global | Optional | false
minAssociations | xs:nonNegativeInteger | No | Global | Optional | -
maxAssociations | xs:nonNegativeInteger | No | Global | Optional | 1
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_18-RULE INTERACTION 18a-Assertion 1: "//qti:responseDeclaration[@baseType='directedPair']" RULE_SET_INTERACTION_18-RULE INTERACTION 18a-Assertion 2: "not(not(number(@maxAssociations)=0) and number(@maxAssociations) < number(@minAssociations))"
Source |
    <xs:element name="gapMatchInteraction" type="GapMatchInteraction.Type" />

### 4.2.69 "gapText" Global Element Description

The XSD description for the "gapText" Global Element is given in Table 4.2.69.

Table 4.2.69 XSD description for the "gapText" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | GapText.Type
Type Hierarchy | BaseSequence.Type ^---GapText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | GapMatchInteraction.Type, GraphicGapMatchInteraction.Type
Model | ( printedVariable{1..1} | feedbackInline{1..1} | templateInline{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | show
matchGroup | List of IdentifierList.Type | No | Global | Optional | -
matchMax | xs:nonNegativeInteger | No | Global | Required | -
matchMin | xs:nonNegativeInteger | No | Global | Optional | 0
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION-RELATED_1-RULE INTERACTION-RELATED 1a-Assertion 1: "not(not(number(@matchMax)=0) and number(@matchMax) < number(@matchMin))"
Source |
    <xs:element name="gapText" type="GapText.Type" />

### 4.2.70 "gcd" Global Element Description

The XSD description for the "gcd" Global Element is given in Table 4.2.70.

Table 4.2.70 XSD description for the "gcd" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Logic1toMany.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..*}
Attributes | None.
Source |
    <xs:element name="gcd" type="Logic1toMany.Type" />

### 4.2.71 "graphicAssociateInteraction" Global Element Description

The XSD description for the "graphicAssociateInteraction" Global Element is given in Table 4.2.71.

Table 4.2.71 XSD description for the "graphicAssociateInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | GraphicAssociateInteraction.Type
Type Hierarchy | BasePromptInteraction.Type ^---GraphicAssociateInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, LI.Type, StimulusBody.Type, TDH.Type
Model | prompt{0..1}, object{1..1}, associableHotspot{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
minAssociations | xs:nonNegativeInteger | No | Global | Optional | -
maxAssociations | xs:nonNegativeInteger | No | Global | Optional | 1
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_10-RULE INTERACTION 10a-Assertion 1: "not(not(number(@maxAssociations)=0) and number(@maxAssociations) < number(@minAssociations))"
Source |
    <xs:element name="graphicAssociateInteraction" type="GraphicAssociateInteraction.Type" />

### 4.2.72 "graphicGapMatchInteraction" Global Element Description

The XSD description for the "graphicGapMatchInteraction" Global Element is given in Table 4.2.72.

Table 4.2.72 XSD description for the "graphicGapMatchInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | GraphicGapMatchInteraction.Type
Type Hierarchy | BaseSequenceFull.Type ^---GraphicGapMatchInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, LI.Type, StimulusBody.Type, TDH.Type
Model | prompt{0..1}, object{1..1}, ( gapText{1..1} | gapImg{1..1} ){1..*}, associableHotspot{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
minAssociations | xs:nonNegativeInteger | No | Global | Optional | -
maxAssociations | xs:nonNegativeInteger | No | Global | Optional | 1
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_19-RULE INTERACTION 19a-Assertion 1: "//qti:responseDeclaration[@baseType='directedPair']"
Source |
    <xs:element name="graphicGapMatchInteraction" type="GraphicGapMatchInteraction.Type" />

### 4.2.73 "graphicOrderInteraction" Global Element Description

The XSD description for the "graphicOrderInteraction" Global Element is given in Table 4.2.73.

Table 4.2.73 XSD description for the "graphicOrderInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | GraphicOrderInteraction.Type
Type Hierarchy | BaseSequenceFull.Type ^---GraphicOrderInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, LI.Type, StimulusBody.Type, TDH.Type
Model | prompt{0..1}, object{1..1}, hotspotChoice{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
minChoices | xs:nonNegativeInteger | No | Global | Optional | -
maxChoices | xs:nonNegativeInteger | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_05-RULE INTERACTION 5a-Assertion 1: "not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))"
Source |
    <xs:element name="graphicOrderInteraction" type="GraphicOrderInteraction.Type" />

### 4.2.74 "gt" Global Element Description

The XSD description for the "gt" Global Element is given in Table 4.2.74.

Table 4.2.74 XSD description for the "gt" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicPair.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes | None.
Source |
    <xs:element name="gt" type="LogicPair.Type" />

### 4.2.75 "gte" Global Element Description

The XSD description for the "gte" Global Element is given in Table 4.2.75.

Table 4.2.75 XSD description for the "gte" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicPair.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes | None.
Source |
    <xs:element name="gte" type="LogicPair.Type" />

### 4.2.76 "h1" Global Element Description

The XSD description for the "h1" Global Element is given in Table 4.2.76.

Table 4.2.76 XSD description for the "h1" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="h1" type="HTMLText.Type" />

### 4.2.77 "h2" Global Element Description

The XSD description for the "h2" Global Element is given in Table 4.2.77.

Table 4.2.77 XSD description for the "h2" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="h2" type="HTMLText.Type" />

### 4.2.78 "h3" Global Element Description

The XSD description for the "h3" Global Element is given in Table 4.2.78.

Table 4.2.78 XSD description for the "h3" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="h3" type="HTMLText.Type" />

### 4.2.79 "h4" Global Element Description

The XSD description for the "h4" Global Element is given in Table 4.2.79.

Table 4.2.79 XSD description for the "h4" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="h4" type="HTMLText.Type" />

### 4.2.80 "h5" Global Element Description

The XSD description for the "h5" Global Element is given in Table 4.2.80.

Table 4.2.80 XSD description for the "h5" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="h5" type="HTMLText.Type" />

### 4.2.81 "h6" Global Element Description

The XSD description for the "h6" Global Element is given in Table 4.2.81.

Table 4.2.81 XSD description for the "h6" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="h6" type="HTMLText.Type" />

### 4.2.82 "qh5:header" Global Element Description

The XSD description for the "qh5:header" Global Element is given in Table 4.2.82.

Table 4.2.82 XSD description for the "qh5:header" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqtiv2p2_html5_v1p0
Diagram |
Type | [ Imported ( HTML5 ) ]
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).

### 4.2.83 "hotspotChoice" Global Element Description

The XSD description for the "hotspotChoice" Global Element is given in Table 4.2.83.

Table 4.2.83 XSD description for the "hotspotChoice" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HotspotChoice.Type
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---HotspotChoice.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | unbounded
Mixed | false
Used by |
ComplexTypes | GraphicOrderInteraction.Type, HotspotInteraction.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | show
shape | [ Enumeration ] | No | Global | Required | -
coords | Coords.Type | No | Global | Required | -
hotspotLabel | xs:string | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="hotspotChoice" type="HotspotChoice.Type" />

### 4.2.84 "hotspotInteraction" Global Element Description

The XSD description for the "hotspotInteraction" Global Element is given in Table 4.2.84.

Table 4.2.84 XSD description for the "hotspotInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HotspotInteraction.Type
Type Hierarchy | BasePromptInteraction.Type ^---HotspotInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, LI.Type, StimulusBody.Type, TDH.Type
Model | prompt{0..1}, object{1..1}, hotspotChoice{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
minChoices | xs:nonNegativeInteger | No | Global | Optional | 0
maxChoices | xs:nonNegativeInteger | No | Global | Optional | 1
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_04-RULE INTERACTION 4a-Assertion 1: "not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))"
Source |
    <xs:element name="hotspotInteraction" type="HotspotInteraction.Type" />

### 4.2.85 "hottext" Global Element Description

The XSD description for the "hottext" Global Element is given in Table 4.2.85.

Table 4.2.85 XSD description for the "hottext" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HotText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HotText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, Caption.Type, DD.Type, DT.Type, Div.Type, HTMLText.Type, LI.Type, ModalFeedback.Type, Q.Type, TDH.Type, TemplateInline.Type, TestFeedback.Type
Model | ( printedVariable{1..1} | feedbackInline{1..1} | templateInline{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | show
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="hottext" type="HotText.Type" />

### 4.2.86 "hottextInteraction" Global Element Description

The XSD description for the "hottextInteraction" Global Element is given in Table 4.2.86.

Table 4.2.86 XSD description for the "hottextInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HotTextInteraction.Type
Type Hierarchy | BasePromptInteraction.Type ^---HotTextInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, LI.Type, StimulusBody.Type, TDH.Type
Model | prompt{0..1}, ( feedbackBlock{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | hr{1..1} | blockquote{1..1} | table{1..1} | div{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:audio{1..1} | qh5:figure{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:video{1..1} ){1..1} ){1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
maxChoices | xs:nonNegativeInteger | No | Global | Optional | 1
minChoices | xs:nonNegativeInteger | No | Global | Optional | 0
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_09-RULE INTERACTION 9a-Assertion 1: "not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))"
Source |
    <xs:element name="hottextInteraction" type="HotTextInteraction.Type" />

### 4.2.87 "hr" Global Element Description

The XSD description for the "hr" Global Element is given in Table 4.2.87.

Table 4.2.87 XSD description for the "hr" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HR.Type
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---HR.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="hr" type="HR.Type" />

### 4.2.88 "i" Global Element Description

The XSD description for the "i" Global Element is given in Table 4.2.88.

Table 4.2.88 XSD description for the "i" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="i" type="HTMLText.Type" />

### 4.2.89 "img" Global Element Description

The XSD description for the "img" Global Element is given in Table 4.2.89.

Table 4.2.89 XSD description for the "img" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Img.Type
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---Img.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
src | xs:anyURI | No | Global | Required | -
alt | xs:string | No | Global | Required | -
longdesc | xs:anyURI | No | Global | Optional | -
height | Length.Type | No | Global | Optional | -
width | Length.Type | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="img" type="Img.Type" />

### 4.2.90 "xi:include" Global Element Description

The XSD description for the "xi:include" Global Element is given in Table 4.2.90.

Table 4.2.90 XSD description for the "xi:include" Global Element.
Namespace | http://www.w3.org/2001/XInclude
Diagram |
Type | [ Imported ( Include ) ]
Used by |
ComplexTypes | A.Type, AssessmentSection.Type, BlockQuote.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapMatchInteraction.Type, GapText.Type, HTMLText.Type, HotText.Type, HotTextInteraction.Type, InfoControl.Type, InlineChoice.Type, ItemBody.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, OutcomeElse.Type, OutcomeIf.Type, OutcomeProcessing.Type, OutcomeProcessingFragment.Type, Prompt.Type, Q.Type, ResponseElse.Type, ResponseIf.Type, ResponseProcessing.Type, ResponseProcessingFragment.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/w3/2001/XInclude.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/w3/2001/XInclude.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/w3/2001/XInclude.xsd).

### 4.2.91 "index" Global Element Description

The XSD description for the "index" Global Element is given in Table 4.2.91.

Table 4.2.91 XSD description for the "index" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Index.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
n | Union [ IntOrIdentifier ] | No | Global | Required | -
Source |
    <xs:element name="index" type="Index.Type" />

### 4.2.92 "infoControl" Global Element Description

The XSD description for the "infoControl" Global Element is given in Table 4.2.92.

Table 4.2.92 XSD description for the "infoControl" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | InfoControl.Type
Type Hierarchy | BaseSequence.Type ^---InfoControl.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | BlockQuote.Type, FeedbackBlock.Type, ItemBody.Type, StimulusBody.Type
Model | ( printedVariable{1..1} | feedbackBlock{1..1} | feedbackInline{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
title | xs:normalizedString | No | Global | Required | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="infoControl" type="InfoControl.Type" />

### 4.2.93 "inlineChoice" Global Element Description

The XSD description for the "inlineChoice" Global Element is given in Table 4.2.93.

Table 4.2.93 XSD description for the "inlineChoice" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | InlineChoice.Type
Type Hierarchy | BaseSequence.Type ^---InlineChoice.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | unbounded
Mixed | true
Used by |
ComplexTypes | InlineChoiceInteraction.Type
Model | ( printedVariable{1..1} | feedbackInline{1..1} | templateInline{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
fixed | xs:boolean | No | Global | Optional | false
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | show
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="inlineChoice" type="InlineChoice.Type" />

### 4.2.94 "inlineChoiceInteraction" Global Element Description

The XSD description for the "inlineChoiceInteraction" Global Element is given in Table 4.2.94.

Table 4.2.94 XSD description for the "inlineChoiceInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | InlineChoiceInteraction.Type
Type Hierarchy | BaseSequenceFull.Type ^---InlineChoiceInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | A.Type, Caption.Type, DD.Type, DT.Type, Div.Type, HTMLText.Type, LI.Type, Q.Type, TDH.Type
Model | label{0..1}, inlineChoice{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
shuffle | xs:boolean | No | Global | Optional | false
required | xs:boolean | No | Global | Optional | false
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="inlineChoiceInteraction" type="InlineChoiceInteraction.Type" />

### 4.2.95 "inside" Global Element Description

The XSD description for the "inside" Global Element is given in Table 4.2.95.

Table 4.2.95 XSD description for the "inside" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Inside.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
shape | [ Enumeration ] | No | Global | Required | -
coords | Coords.Type | No | Global | Required | -
Source |
    <xs:element name="inside" type="Inside.Type" />

### 4.2.96 "integerDivide" Global Element Description

The XSD description for the "integerDivide" Global Element is given in Table 4.2.96.

Table 4.2.96 XSD description for the "integerDivide" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicPair.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes | None.
Source |
    <xs:element name="integerDivide" type="LogicPair.Type" />

### 4.2.97 "integerModulus" Global Element Description

The XSD description for the "integerModulus" Global Element is given in Table 4.2.97.

Table 4.2.97 XSD description for the "integerModulus" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicPair.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes | None.
Source |
    <xs:element name="integerModulus" type="LogicPair.Type" />

### 4.2.98 "integerToFloat" Global Element Description

The XSD description for the "integerToFloat" Global Element is given in Table 4.2.98.

Table 4.2.98 XSD description for the "integerToFloat" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicSingle.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes | None.
Source |
    <xs:element name="integerToFloat" type="LogicSingle.Type" />

### 4.2.99 "interpolationTable" Global Element Description

The XSD description for the "interpolationTable" Global Element is given in Table 4.2.99.

Table 4.2.99 XSD description for the "interpolationTable" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | InterpolationTable.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | OutcomeDeclaration.Type
Model | interpolationTableEntry{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
defaultValue | xs:string | No | Global | Optional | -
Source |
    <xs:element name="interpolationTable" type="InterpolationTable.Type" />

### 4.2.100 "interpolationTableEntry" Global Element Description

The XSD description for the "interpolationTableEntry" Global Element is given in Table 4.2.100.

Table 4.2.100 XSD description for the "interpolationTableEntry" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | InterpolationTableEntry.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---InterpolationTableEntry.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | unbounded
Used by |
ComplexTypes | InterpolationTable.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sourceValue | xs:double | No | Global | Required | -
includeBoundary | xs:boolean | No | Global | Optional | true
targetValue | xs:string | No | Global | Required | -
Source |
    <xs:element name="interpolationTableEntry" type="InterpolationTableEntry.Type" />

### 4.2.101 "isNull" Global Element Description

The XSD description for the "isNull" Global Element is given in Table 4.2.101.

Table 4.2.101 XSD description for the "isNull" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicSingle.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes | None.
Source |
    <xs:element name="isNull" type="LogicSingle.Type" />

### 4.2.102 "itemBody" Global Element Description

The XSD description for the "itemBody" Global Element is given in Table 4.2.102.

Table 4.2.102 XSD description for the "itemBody" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | ItemBody.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AssessmentItem.Type
Model | ( rubricBlock{1..1} | ( positionObjectStage{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | feedbackBlock{1..1} | templateBlock{1..1} | infoControl{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | hr{1..1} | blockquote{1..1} | table{1..1} | div{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:audio{1..1} | qh5:figure{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:video{1..1} ){1..1} ){1..1} ){1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | No | Global | Optional | -
class | List of StringList.Type | No | Global | Optional | -
xml:lang | [ Import ] | No | Global | Optional | -
label | xs:normalizedString | No | Global | Optional | -
dir | [ Enumeration ] | No | Global | Optional | auto
Source |
    <xs:element name="itemBody" type="ItemBody.Type" />

### 4.2.103 "itemSessionControl" Global Element Description

The XSD description for the "itemSessionControl" Global Element is given in Table 4.2.103.

Table 4.2.103 XSD description for the "itemSessionControl" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | ItemSessionControl.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---ItemSessionControl.Type
Properties |
Content | simple
MinOccurs | 0
MaxOccurs | 1
Used by |
ComplexTypes | AssessmentItemRef.Type, AssessmentSection.Type, TestPart.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
maxAttempts | xs:int | No | Global | Optional | -
showFeedback | xs:boolean | No | Global | Optional | false
allowReview | xs:boolean | No | Global | Optional | true
showSolution | xs:boolean | No | Global | Optional | false
allowComment | xs:boolean | No | Global | Optional | false
allowSkipping | xs:boolean | No | Global | Optional | true
validateResponses | xs:boolean | No | Global | Optional | false
Source |
    <xs:element name="itemSessionControl" type="ItemSessionControl.Type" />

### 4.2.104 "kbd" Global Element Description

The XSD description for the "kbd" Global Element is given in Table 4.2.104.

Table 4.2.104 XSD description for the "kbd" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="kbd" type="HTMLText.Type" />

### 4.2.105 "qh5:label" Global Element Description

The XSD description for the "qh5:label" Global Element is given in Table 4.2.105.

Table 4.2.105 XSD description for the "qh5:label" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqtiv2p2_html5_v1p0
Diagram |
Type | [ Imported ( HTML5 ) ]
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).

### 4.2.106 "label" Global Element Description

The XSD description for the "label" Global Element is given in Table 4.2.106.

Table 4.2.106 XSD description for the "label" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Label.Type
Type Hierarchy | BaseSequenceXBase.Type ^---Label.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | InlineChoiceInteraction.Type
Model | ( printedVariable{1..1} | feedbackInline{1..1} | templateInline{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="label" type="Label.Type" />

### 4.2.107 "lcm" Global Element Description

The XSD description for the "lcm" Global Element is given in Table 4.2.107.

Table 4.2.107 XSD description for the "lcm" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Logic1toMany.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..*}
Attributes | None.
Source |
    <xs:element name="lcm" type="Logic1toMany.Type" />

### 4.2.108 "li" Global Element Description

The XSD description for the "li" Global Element is given in Table 4.2.108.

Table 4.2.108 XSD description for the "li" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LI.Type
Type Hierarchy | BaseSequence.Type ^---LI.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | unbounded
Mixed | true
Used by |
ComplexTypes | OUL.Type
Model | ( printedVariable{1..1} | feedbackBlock{1..1} | hottext{1..1} | feedbackInline{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | textEntryInteraction{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="li" type="LI.Type" />

### 4.2.109 "lookupOutcomeValue" Global Element Description

The XSD description for the "lookupOutcomeValue" Global Element is given in Table 4.2.109.

Table 4.2.109 XSD description for the "lookupOutcomeValue" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LookupOutcomeValue.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | OutcomeElse.Type, OutcomeIf.Type, OutcomeProcessing.Type, OutcomeProcessingFragment.Type, ResponseElse.Type, ResponseIf.Type, ResponseProcessing.Type, ResponseProcessingFragment.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:element name="lookupOutcomeValue" type="LookupOutcomeValue.Type" />

### 4.2.110 "lt" Global Element Description

The XSD description for the "lt" Global Element is given in Table 4.2.110.

Table 4.2.110 XSD description for the "lt" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicPair.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes | None.
Source |
    <xs:element name="lt" type="LogicPair.Type" />

### 4.2.111 "lte" Global Element Description

The XSD description for the "lte" Global Element is given in Table 4.2.111.

Table 4.2.111 XSD description for the "lte" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicPair.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes | None.
Source |
    <xs:element name="lte" type="LogicPair.Type" />

### 4.2.112 "mapEntry" Global Element Description

The XSD description for the "mapEntry" Global Element is given in Table 4.2.112.

Table 4.2.112 XSD description for the "mapEntry" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | MapEntry.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---MapEntry.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | unbounded
Used by |
ComplexTypes | Mapping.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
mapKey | xs:normalizedString | No | Global | Required | -
mappedValue | xs:double | No | Global | Required | -
caseSensitive | xs:boolean | No | Global | Optional | false
Source |
    <xs:element name="mapEntry" type="MapEntry.Type" />

### 4.2.113 "mapping" Global Element Description

The XSD description for the "mapping" Global Element is given in Table 4.2.113.

Table 4.2.113 XSD description for the "mapping" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Mapping.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | ResponseDeclaration.Type
Model | mapEntry{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
lowerBound | xs:double | No | Global | Optional | -
upperBound | xs:double | No | Global | Optional | -
defaultValue | xs:double | No | Global | Optional | 0
Source |
    <xs:element name="mapping" type="Mapping.Type" />

### 4.2.114 "mapResponse" Global Element Description

The XSD description for the "mapResponse" Global Element is given in Table 4.2.114.

Table 4.2.114 XSD description for the "mapResponse" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | MapResponse.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---MapResponse.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:element name="mapResponse" type="MapResponse.Type" />

### 4.2.115 "mapResponsePoint" Global Element Description

The XSD description for the "mapResponsePoint" Global Element is given in Table 4.2.115.

Table 4.2.115 XSD description for the "mapResponsePoint" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | MapResponse.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---MapResponse.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:element name="mapResponsePoint" type="MapResponse.Type" />

### 4.2.116 "ssml11:mark" Global Element Description

The XSD description for the "ssml11:mark" Global Element is given in Table 4.2.116.

Table 4.2.116 XSD description for the "ssml11:mark" Global Element.
Namespace | http://www.w3.org/2010/10/synthesis
Diagram |
Type | [ Imported ( SSMLv1p1 ) ]
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).

### 4.2.117 "match" Global Element Description

The XSD description for the "match" Global Element is given in Table 4.2.117.

Table 4.2.117 XSD description for the "match" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicPair.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes | None.
Source |
    <xs:element name="match" type="LogicPair.Type" />

### 4.2.118 "matchInteraction" Global Element Description

The XSD description for the "matchInteraction" Global Element is given in Table 4.2.118.

Table 4.2.118 XSD description for the "matchInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | MatchInteraction.Type
Type Hierarchy | BasePromptInteraction.Type ^---MatchInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, LI.Type, StimulusBody.Type, TDH.Type
Model | prompt{0..1}, simpleMatchSet{2..2}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
shuffle | xs:boolean | No | Global | Optional | false
maxAssociations | xs:nonNegativeInteger | No | Global | Optional | 1
minAssociations | xs:nonNegativeInteger | No | Global | Optional | 0
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_11-RULE INTERACTION 11a-Assertion 1: "not(not(number(@maxAssociations)=0) and number(@maxAssociations) < number(@minAssociations))"
Source |
    <xs:element name="matchInteraction" type="MatchInteraction.Type" />

### 4.2.119 "matchTable" Global Element Description

The XSD description for the "matchTable" Global Element is given in Table 4.2.119.

Table 4.2.119 XSD description for the "matchTable" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | MatchTable.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | OutcomeDeclaration.Type
Model | matchTableEntry{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
defaultValue | xs:string | No | Global | Optional | -
Source |
    <xs:element name="matchTable" type="MatchTable.Type" />

### 4.2.120 "matchTableEntry" Global Element Description

The XSD description for the "matchTableEntry" Global Element is given in Table 4.2.120.

Table 4.2.120 XSD description for the "matchTableEntry" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | MatchTableEntry.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---MatchTableEntry.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | unbounded
Used by |
ComplexTypes | MatchTable.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sourceValue | xs:int | No | Global | Required | -
targetValue | [ Enumeration ] | No | Global | Required | -
Source |
    <xs:element name="matchTableEntry" type="MatchTableEntry.Type" />

### 4.2.121 "m2:math" Global Element Description

The XSD description for the "m2:math" Global Element is given in Table 4.2.121.

Table 4.2.121 XSD description for the "m2:math" Global Element.
Namespace | http://www.w3.org/1998/Math/MathML
Diagram |
Type | [ Imported ( MathML2 ) ]
Used by |
ComplexTypes | A.Type, BlockQuote.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapMatchInteraction.Type, GapText.Type, HTMLText.Type, HotText.Type, HotTextInteraction.Type, InfoControl.Type, InlineChoice.Type, ItemBody.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.w3.org/Math/XMLSchema/mathml2/mathml2.xsd).
Attributes | See import XSD (http://www.w3.org/Math/XMLSchema/mathml2/mathml2.xsd).
Source | See import XSD (http://www.w3.org/Math/XMLSchema/mathml2/mathml2.xsd).

### 4.2.122 "m3:math" Global Element Description

The XSD description for the "m3:math" Global Element is given in Table 4.2.122.

Table 4.2.122 XSD description for the "m3:math" Global Element.
Namespace | http://www.w3.org/2010/Math/MathML
Diagram |
Type | [ Imported ( MathML3 ) ]
Used by |
ComplexTypes | A.Type, BlockQuote.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapMatchInteraction.Type, GapText.Type, HTMLText.Type, HotText.Type, HotTextInteraction.Type, InfoControl.Type, InlineChoice.Type, ItemBody.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/w3/Math/XMLSchema/mathml3/mathml3.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/w3/Math/XMLSchema/mathml3/mathml3.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/w3/Math/XMLSchema/mathml3/mathml3.xsd).

### 4.2.123 "mathConstant" Global Element Description

The XSD description for the "mathConstant" Global Element is given in Table 4.2.123.

Table 4.2.123 XSD description for the "mathConstant" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | MathConstant.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---MathConstant.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
name | [ Enumeration ] | No | Global | Required | -
Source |
    <xs:element name="mathConstant" type="MathConstant.Type" />

### 4.2.124 "mathOperator" Global Element Description

The XSD description for the "mathOperator" Global Element is given in Table 4.2.124.

Table 4.2.124 XSD description for the "mathOperator" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | MathOperator.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
name | [ Enumeration ] | No | Global | Required | -
Source |
    <xs:element name="mathOperator" type="MathOperator.Type" />

### 4.2.125 "max" Global Element Description

The XSD description for the "max" Global Element is given in Table 4.2.125.

Table 4.2.125 XSD description for the "max" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Logic1toMany.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..*}
Attributes | None.
Source |
    <xs:element name="max" type="Logic1toMany.Type" />

### 4.2.126 "mediaInteraction" Global Element Description

The XSD description for the "mediaInteraction" Global Element is given in Table 4.2.126.

Table 4.2.126 XSD description for the "mediaInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | MediaInteraction.Type
Type Hierarchy | BasePromptInteraction.Type ^---MediaInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, LI.Type, StimulusBody.Type, TDH.Type
Model | prompt{0..1} | object{1..1} | qh5:audio{1..1} | qh5:video{1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
autostart | xs:boolean | No | Global | Required | -
minPlays | xs:nonNegativeInteger | No | Global | Optional | 0
maxPlays | xs:nonNegativeInteger | No | Global | Optional | 0
loop | xs:boolean | No | Global | Optional | false
coords | Coords.Type | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_13-RULE INTERACTION 13a-Assertion 1: "not(number(@maxPlays) < number(@minPlays))"
Source |
    <xs:element name="mediaInteraction" type="MediaInteraction.Type" />

### 4.2.127 "member" Global Element Description

The XSD description for the "member" Global Element is given in Table 4.2.127.

Table 4.2.127 XSD description for the "member" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicPair.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes | None.
Source |
    <xs:element name="member" type="LogicPair.Type" />

### 4.2.128 "min" Global Element Description

The XSD description for the "min" Global Element is given in Table 4.2.128.

Table 4.2.128 XSD description for the "min" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Logic1toMany.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..*}
Attributes | None.
Source |
    <xs:element name="min" type="Logic1toMany.Type" />

### 4.2.129 "minInclusive" Global Element Description

The XSD description for the "minInclusive" Global Element is given in Table 4.2.129.

Table 4.2.129 XSD description for the "minInclusive" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | xs:double
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | NonNegativeDouble.Type
Model | N/A
Attributes | None.
Source |
    <xs:element name="minInclusive" type="xs:double" />

### 4.2.130 "modalFeedback" Global Element Description

The XSD description for the "modalFeedback" Global Element is given in Table 4.2.130.

Table 4.2.130 XSD description for the "modalFeedback" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | ModalFeedback.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | unbounded
Mixed | true
Used by |
ComplexTypes | AssessmentItem.Type
Model | ( printedVariable{1..1} | hottext{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}, stylesheet{0..*}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
outcomeIdentifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Required | -
identifier | Identifier.Type | No | Global | Required | -
title | xs:normalizedString | No | Global | Optional | -
Source |
    <xs:element name="modalFeedback" type="ModalFeedback.Type" />

### 4.2.131 "multiple" Global Element Description

The XSD description for the "multiple" Global Element is given in Table 4.2.131.

Table 4.2.131 XSD description for the "multiple" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Logic0toMany.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){0..*}
Attributes | None.
Source |
    <xs:element name="multiple" type="Logic0toMany.Type" />

### 4.2.132 "qh5:nav" Global Element Description

The XSD description for the "qh5:nav" Global Element is given in Table 4.2.132.

Table 4.2.132 XSD description for the "qh5:nav" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqtiv2p2_html5_v1p0
Diagram |
Type | [ Imported ( HTML5 ) ]
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).

### 4.2.133 "not" Global Element Description

The XSD description for the "not" Global Element is given in Table 4.2.133.

Table 4.2.133 XSD description for the "not" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicSingle.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes | None.
Source |
    <xs:element name="not" type="LogicSingle.Type" />

### 4.2.134 "null" Global Element Description

The XSD description for the "null" Global Element is given in Table 4.2.134.

Table 4.2.134 XSD description for the "null" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | EmptyPrimitiveType.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | N/A
Attributes | None.
Source |
    <xs:element name="null" type="EmptyPrimitiveType.Type" />

### 4.2.135 "numberCorrect" Global Element Description

The XSD description for the "numberCorrect" Global Element is given in Table 4.2.135.

Table 4.2.135 XSD description for the "numberCorrect" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Number.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---Number.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sectionIdentifier | Identifier.Type | No | Global | Optional | -
includeCategory | List of IdentifierList.Type | No | Global | Optional | -
excludeCategory | List of IdentifierList.Type | No | Global | Optional | -
Source |
    <xs:element name="numberCorrect" type="Number.Type" />

### 4.2.136 "numberIncorrect" Global Element Description

The XSD description for the "numberIncorrect" Global Element is given in Table 4.2.136.

Table 4.2.136 XSD description for the "numberIncorrect" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Number.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---Number.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sectionIdentifier | Identifier.Type | No | Global | Optional | -
includeCategory | List of IdentifierList.Type | No | Global | Optional | -
excludeCategory | List of IdentifierList.Type | No | Global | Optional | -
Source |
    <xs:element name="numberIncorrect" type="Number.Type" />

### 4.2.137 "numberPresented" Global Element Description

The XSD description for the "numberPresented" Global Element is given in Table 4.2.137.

Table 4.2.137 XSD description for the "numberPresented" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Number.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---Number.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sectionIdentifier | Identifier.Type | No | Global | Optional | -
includeCategory | List of IdentifierList.Type | No | Global | Optional | -
excludeCategory | List of IdentifierList.Type | No | Global | Optional | -
Source |
    <xs:element name="numberPresented" type="Number.Type" />

### 4.2.138 "numberResponded" Global Element Description

The XSD description for the "numberResponded" Global Element is given in Table 4.2.138.

Table 4.2.138 XSD description for the "numberResponded" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Number.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---Number.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sectionIdentifier | Identifier.Type | No | Global | Optional | -
includeCategory | List of IdentifierList.Type | No | Global | Optional | -
excludeCategory | List of IdentifierList.Type | No | Global | Optional | -
Source |
    <xs:element name="numberResponded" type="Number.Type" />

### 4.2.139 "numberSelected" Global Element Description

The XSD description for the "numberSelected" Global Element is given in Table 4.2.139.

Table 4.2.139 XSD description for the "numberSelected" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Number.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---Number.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sectionIdentifier | Identifier.Type | No | Global | Optional | -
includeCategory | List of IdentifierList.Type | No | Global | Optional | -
excludeCategory | List of IdentifierList.Type | No | Global | Optional | -
Source |
    <xs:element name="numberSelected" type="Number.Type" />

### 4.2.140 "object" Global Element Description

The XSD description for the "object" Global Element is given in Table 4.2.140.

Table 4.2.140 XSD description for the "object" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Object.Type
Type Hierarchy | BaseSequenceXBase.Type ^---Object.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, DrawingInteraction.Type, FeedbackBlock.Type, FeedbackInline.Type, GapImg.Type, GapText.Type, GraphicAssociateInteraction.Type, GraphicGapMatchInteraction.Type, GraphicOrderInteraction.Type, HTMLText.Type, HotText.Type, HotspotInteraction.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, MediaInteraction.Type, ModalFeedback.Type, Object.Type, PositionObjectInteraction.Type, PositionObjectStage.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SelectPointInteraction.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | param{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
data | xs:string | No | Global | Required | -
type | MimeType.Type | No | Global | Required | -
width | Length.Type | No | Global | Optional | -
height | Length.Type | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="object" type="Object.Type" />

### 4.2.141 "ol" Global Element Description

The XSD description for the "ol" Global Element is given in Table 4.2.141.

Table 4.2.141 XSD description for the "ol" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | OUL.Type
Type Hierarchy | BaseSequenceXBase.Type ^---OUL.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | li{0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="ol" type="OUL.Type" />

### 4.2.142 "or" Global Element Description

The XSD description for the "or" Global Element is given in Table 4.2.142.

Table 4.2.142 XSD description for the "or" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Logic1toMany.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..*}
Attributes | None.
Source |
    <xs:element name="or" type="Logic1toMany.Type" />

### 4.2.143 "ordered" Global Element Description

The XSD description for the "ordered" Global Element is given in Table 4.2.143.

Table 4.2.143 XSD description for the "ordered" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Logic0toMany.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){0..*}
Attributes | None.
Source |
    <xs:element name="ordered" type="Logic0toMany.Type" />

### 4.2.144 "ordering" Global Element Description

The XSD description for the "ordering" Global Element is given in Table 4.2.144.

Table 4.2.144 XSD description for the "ordering" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Ordering.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AssessmentSection.Type
Model | Namespace-based Extension
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
shuffle | xs:boolean | No | Global | Optional | false
##other | [ Namespace Extension ] | No | Global | Optional | -
Source |
    <xs:element name="ordering" type="Ordering.Type" />

### 4.2.145 "orderInteraction" Global Element Description

The XSD description for the "orderInteraction" Global Element is given in Table 4.2.145.

Table 4.2.145 XSD description for the "orderInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | OrderInteraction.Type
Type Hierarchy | BasePromptInteraction.Type ^---OrderInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, LI.Type, StimulusBody.Type, TDH.Type
Model | prompt{0..1}, simpleChoice{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
shuffle | xs:boolean | No | Global | Optional | false
minChoices | xs:nonNegativeInteger | No | Global | Optional | -
maxChoices | xs:nonNegativeInteger | No | Global | Optional | -
orientation | [ Enumeration ] | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_08-RULE INTERACTION 8a-Assertion 1: "not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))"
Source |
    <xs:element name="orderInteraction" type="OrderInteraction.Type" />

### 4.2.146 "outcomeCondition" Global Element Description

The XSD description for the "outcomeCondition" Global Element is given in Table 4.2.146.

Table 4.2.146 XSD description for the "outcomeCondition" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | OutcomeCondition.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | OutcomeElse.Type, OutcomeIf.Type, OutcomeProcessing.Type, OutcomeProcessingFragment.Type
Model | outcomeIf{1..1}, outcomeElseIf{0..*}, outcomeElse{0..1}
Attributes | None.
Source |
    <xs:element name="outcomeCondition" type="OutcomeCondition.Type" />

### 4.2.147 "outcomeElse" Global Element Description

The XSD description for the "outcomeElse" Global Element is given in Table 4.2.147.

Table 4.2.147 XSD description for the "outcomeElse" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | OutcomeElse.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | OutcomeCondition.Type
Model | ( lookupOutcomeValue{1..1} | outcomeProcessingFragment{1..1} | setOutcomeValue{1..1} | xi:include{1..1} | exitTest{1..1} | outcomeCondition{1..1} ){0..*}
Attributes | None.
Source |
    <xs:element name="outcomeElse" type="OutcomeElse.Type" />

### 4.2.148 "outcomeElseIf" Global Element Description

The XSD description for the "outcomeElseIf" Global Element is given in Table 4.2.148.

Table 4.2.148 XSD description for the "outcomeElseIf" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | OutcomeIf.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | unbounded
Mixed | false
Used by |
ComplexTypes | OutcomeCondition.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}, ( lookupOutcomeValue{1..1} | outcomeProcessingFragment{1..1} | setOutcomeValue{1..1} | xi:include{1..1} | exitTest{1..1} | outcomeCondition{1..1} ){0..*}
Attributes | None.
Source |
    <xs:element name="outcomeElseIf" type="OutcomeIf.Type" />

### 4.2.149 "outcomeIf" Global Element Description

The XSD description for the "outcomeIf" Global Element is given in Table 4.2.149.

Table 4.2.149 XSD description for the "outcomeIf" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | OutcomeIf.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | OutcomeCondition.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}, ( lookupOutcomeValue{1..1} | outcomeProcessingFragment{1..1} | setOutcomeValue{1..1} | xi:include{1..1} | exitTest{1..1} | outcomeCondition{1..1} ){0..*}
Attributes | None.
Source |
    <xs:element name="outcomeIf" type="OutcomeIf.Type" />

### 4.2.150 "outcomeMaximum" Global Element Description

The XSD description for the "outcomeMaximum" Global Element is given in Table 4.2.150.

Table 4.2.150 XSD description for the "outcomeMaximum" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | OutcomeMinMax.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---OutcomeMinMax.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sectionIdentifier | Identifier.Type | No | Global | Optional | -
includeCategory | List of IdentifierList.Type | No | Global | Optional | -
excludeCategory | List of IdentifierList.Type | No | Global | Optional | -
outcomeIdentifier | Identifier.Type | No | Global | Required | -
weightIdentifier | Identifier.Type | No | Global | Optional | -
Source |
    <xs:element name="outcomeMaximum" type="OutcomeMinMax.Type" />

### 4.2.151 "outcomeMinimum" Global Element Description

The XSD description for the "outcomeMinimum" Global Element is given in Table 4.2.151.

Table 4.2.151 XSD description for the "outcomeMinimum" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | OutcomeMinMax.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---OutcomeMinMax.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sectionIdentifier | Identifier.Type | No | Global | Optional | -
includeCategory | List of IdentifierList.Type | No | Global | Optional | -
excludeCategory | List of IdentifierList.Type | No | Global | Optional | -
outcomeIdentifier | Identifier.Type | No | Global | Required | -
weightIdentifier | Identifier.Type | No | Global | Optional | -
Source |
    <xs:element name="outcomeMinimum" type="OutcomeMinMax.Type" />

### 4.2.152 "outcomeProcessing" Global Element Description

The XSD description for the "outcomeProcessing" Global Element is given in Table 4.2.152.

Table 4.2.152 XSD description for the "outcomeProcessing" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | OutcomeProcessing.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AssessmentTest.Type
Model | ( lookupOutcomeValue{1..1} | outcomeProcessingFragment{1..1} | setOutcomeValue{1..1} | xi:include{1..1} | exitTest{1..1} | outcomeCondition{1..1} ){0..*}
Attributes | None.
Source |
    <xs:element name="outcomeProcessing" type="OutcomeProcessing.Type" />

### 4.2.153 "outcomeProcessingFragment" Global Element Description

The XSD description for the "outcomeProcessingFragment" Global Element is given in Table 4.2.153.

Table 4.2.153 XSD description for the "outcomeProcessingFragment" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | OutcomeProcessingFragment.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | OutcomeElse.Type, OutcomeIf.Type, OutcomeProcessing.Type, OutcomeProcessingFragment.Type
Model | ( lookupOutcomeValue{1..1} | outcomeProcessingFragment{1..1} | setOutcomeValue{1..1} | xi:include{1..1} | exitTest{1..1} | outcomeCondition{1..1} ){0..*}
Attributes | None.
Source |
    <xs:element name="outcomeProcessingFragment" type="OutcomeProcessingFragment.Type" />

### 4.2.154 "p" Global Element Description

The XSD description for the "p" Global Element is given in Table 4.2.154.

Table 4.2.154 XSD description for the "p" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="p" type="HTMLText.Type" />

### 4.2.155 "ssml11:p" Global Element Description

The XSD description for the "ssml11:p" Global Element is given in Table 4.2.155.

Table 4.2.155 XSD description for the "ssml11:p" Global Element.
Namespace | http://www.w3.org/2010/10/synthesis
Diagram |
Type | [ Imported ( SSMLv1p1 ) ]
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).

### 4.2.156 "param" Global Element Description

The XSD description for the "param" Global Element is given in Table 4.2.156.

Table 4.2.156 XSD description for the "param" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Param.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---Param.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | Object.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
name | xs:string | No | Global | Required | -
value | xs:string | No | Global | Required | -
valuetype | [ Enumeration ] | No | Global | Required | -
type | MimeType.Type | No | Global | Optional | -
Source |
    <xs:element name="param" type="Param.Type" />

### 4.2.157 "patternMatch" Global Element Description

The XSD description for the "patternMatch" Global Element is given in Table 4.2.157.

Table 4.2.157 XSD description for the "patternMatch" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | PatternMatch.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
pattern | Union [ StringOrVariableRef ] | No | Global | Required | -
Source |
    <xs:element name="patternMatch" type="PatternMatch.Type" />

### 4.2.158 "ssml11:phoneme" Global Element Description

The XSD description for the "ssml11:phoneme" Global Element is given in Table 4.2.158.

Table 4.2.158 XSD description for the "ssml11:phoneme" Global Element.
Namespace | http://www.w3.org/2010/10/synthesis
Diagram |
Type | [ Imported ( SSMLv1p1 ) ]
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).

### 4.2.159 "positionObjectInteraction" Global Element Description

The XSD description for the "positionObjectInteraction" Global Element is given in Table 4.2.159.

Table 4.2.159 XSD description for the "positionObjectInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | PositionObjectInteraction.Type
Type Hierarchy | BaseSequenceRIdent.Type ^---PositionObjectInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | unbounded
Mixed | false
Used by |
ComplexTypes | PositionObjectStage.Type
Model | object{1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
centerPoint | List of IntegerList.Type | No | Global | Optional | -
minChoices | xs:nonNegativeInteger | No | Global | Optional | -
maxChoices | xs:nonNegativeInteger | No | Global | Optional | 1
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_06-RULE INTERACTION 6a-Assertion 1: "not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))"
Source |
    <xs:element name="positionObjectInteraction" type="PositionObjectInteraction.Type" />

### 4.2.160 "positionObjectStage" Global Element Description

The XSD description for the "positionObjectStage" Global Element is given in Table 4.2.160.

Table 4.2.160 XSD description for the "positionObjectStage" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | PositionObjectStage.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, StimulusBody.Type
Model | object{1..1}, positionObjectInteraction{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | No | Global | Optional | -
Source |
    <xs:element name="positionObjectStage" type="PositionObjectStage.Type" />

### 4.2.161 "power" Global Element Description

The XSD description for the "power" Global Element is given in Table 4.2.161.

Table 4.2.161 XSD description for the "power" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicPair.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes | None.
Source |
    <xs:element name="power" type="LogicPair.Type" />

### 4.2.162 "pre" Global Element Description

The XSD description for the "pre" Global Element is given in Table 4.2.162.

Table 4.2.162 XSD description for the "pre" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="pre" type="HTMLText.Type" />

### 4.2.163 "preCondition" Global Element Description

The XSD description for the "preCondition" Global Element is given in Table 4.2.163.

Table 4.2.163 XSD description for the "preCondition" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicSingle.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | unbounded
Mixed | false
Used by |
ComplexTypes | AssessmentItemRef.Type, AssessmentSection.Type, TestPart.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes | None.
Source |
    <xs:element name="preCondition" type="LogicSingle.Type" />

### 4.2.164 "printedVariable" Global Element Description

The XSD description for the "printedVariable" Global Element is given in Table 4.2.164.

Table 4.2.164 XSD description for the "printedVariable" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | PrintedVariable.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---PrintedVariable.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | A.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | No | Global | Optional | -
class | List of StringList.Type | No | Global | Optional | -
xml:lang | [ Import ] | No | Global | Optional | -
label | xs:normalizedString | No | Global | Optional | -
xml:base | [ Import ] | No | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
format | xs:normalizedString | No | Global | Optional | -
base | Union [ IntegerOrVariableRef ] | No | Global | Optional | 10
index | Union [ IntegerOrVariableRef ] | No | Global | Optional | -
powerForm | xs:boolean | No | Global | Optional | false
field | xs:normalizedString | No | Global | Optional | -
delimiter | xs:normalizedString | No | Global | Optional | ;
mappingIndicator | xs:normalizedString | No | Global | Optional | =
Source |
    <xs:element name="printedVariable" type="PrintedVariable.Type" />

### 4.2.165 "product" Global Element Description

The XSD description for the "product" Global Element is given in Table 4.2.165.

Table 4.2.165 XSD description for the "product" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Logic1toMany.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..*}
Attributes | None.
Source |
    <xs:element name="product" type="Logic1toMany.Type" />

### 4.2.166 "prompt" Global Element Description

The XSD description for the "prompt" Global Element is given in Table 4.2.166.

Table 4.2.166 XSD description for the "prompt" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Prompt.Type
Type Hierarchy | BaseSequence.Type ^---Prompt.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | BasePromptInteraction.Type, GraphicGapMatchInteraction.Type, GraphicOrderInteraction.Type
Model | ( m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="prompt" type="Prompt.Type" />

### 4.2.167 "ssml11:prosody" Global Element Description

The XSD description for the "ssml11:prosody" Global Element is given in Table 4.2.167.

Table 4.2.167 XSD description for the "ssml11:prosody" Global Element.
Namespace | http://www.w3.org/2010/10/synthesis
Diagram |
Type | [ Imported ( SSMLv1p1 ) ]
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).

### 4.2.168 "q" Global Element Description

The XSD description for the "q" Global Element is given in Table 4.2.168.

Table 4.2.168 XSD description for the "q" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Q.Type
Type Hierarchy | BaseSequenceXBase.Type ^---Q.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
cite | xs:anyURI | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="q" type="Q.Type" />

### 4.2.169 "random" Global Element Description

The XSD description for the "random" Global Element is given in Table 4.2.169.

Table 4.2.169 XSD description for the "random" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicSingle.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes | None.
Source |
    <xs:element name="random" type="LogicSingle.Type" />

### 4.2.170 "randomFloat" Global Element Description

The XSD description for the "randomFloat" Global Element is given in Table 4.2.170.

Table 4.2.170 XSD description for the "randomFloat" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | RandomFloat.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---RandomFloat.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
min | Union [ FloatOrVariableRef ] | No | Global | Optional | 0
max | Union [ FloatOrVariableRef ] | No | Global | Required | -
Source |
    <xs:element name="randomFloat" type="RandomFloat.Type" />

### 4.2.171 "randomInteger" Global Element Description

The XSD description for the "randomInteger" Global Element is given in Table 4.2.171.

Table 4.2.171 XSD description for the "randomInteger" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | RandomInteger.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---RandomInteger.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
min | Union [ IntegerOrVariableRef ] | No | Global | Optional | 0
max | Union [ IntegerOrVariableRef ] | No | Global | Required | -
step | Union [ IntegerOrVariableRef ] | No | Global | Optional | 1
Source |
    <xs:element name="randomInteger" type="RandomInteger.Type" />

### 4.2.172 "repeat" Global Element Description

The XSD description for the "repeat" Global Element is given in Table 4.2.172.

Table 4.2.172 XSD description for the "repeat" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Repeat.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
numberRepeats | Union [ IntOrIdentifier ] | No | Global | Required | -
Source |
    <xs:element name="repeat" type="Repeat.Type" />

### 4.2.173 "responseCondition" Global Element Description

The XSD description for the "responseCondition" Global Element is given in Table 4.2.173.

Table 4.2.173 XSD description for the "responseCondition" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | ResponseCondition.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | ResponseElse.Type, ResponseIf.Type, ResponseProcessing.Type, ResponseProcessingFragment.Type
Model | responseIf{1..1}, responseElseIf{0..*}, responseElse{0..1}
Attributes | None.
Source |
    <xs:element name="responseCondition" type="ResponseCondition.Type" />

### 4.2.174 "responseDeclaration" Global Element Description

The XSD description for the "responseDeclaration" Global Element is given in Table 4.2.174.

Table 4.2.174 XSD description for the "responseDeclaration" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | ResponseDeclaration.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | unbounded
Mixed | false
Used by |
ComplexTypes | AssessmentItem.Type
Model | defaultValue{0..1}, correctResponse{0..1}, mapping{0..1}, areaMapping{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | UniqueIdentifier.Type | No | Global | Required | -
cardinality | [ Enumeration ] | No | Global | Required | -
baseType | [ Enumeration ] | No | Global | Optional | -
Schematron Rules |
Explicit Rules | RULE_SET_INTERACTION_01-RULE INTERACTION 1b-Assertion 1: "//qti:responseDeclaration[@baseType='string'] or //qti:responseDeclaration[@baseType='float'] or //qti:responseDeclaration[@baseType='integer']"
Source |
    <xs:element name="responseDeclaration" type="ResponseDeclaration.Type" />

### 4.2.175 "responseElse" Global Element Description

The XSD description for the "responseElse" Global Element is given in Table 4.2.175.

Table 4.2.175 XSD description for the "responseElse" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | ResponseElse.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | ResponseCondition.Type
Model | ( xi:include{1..1} | responseCondition{1..1} | responseProcessingFragment{1..1} | setOutcomeValue{1..1} | exitResponse{1..1} | lookupOutcomeValue{1..1} ){0..*}
Attributes | None.
Source |
    <xs:element name="responseElse" type="ResponseElse.Type" />

### 4.2.176 "responseElseIf" Global Element Description

The XSD description for the "responseElseIf" Global Element is given in Table 4.2.176.

Table 4.2.176 XSD description for the "responseElseIf" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | ResponseIf.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | unbounded
Mixed | false
Used by |
ComplexTypes | ResponseCondition.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}, ( xi:include{1..1} | responseCondition{1..1} | responseProcessingFragment{1..1} | setOutcomeValue{1..1} | exitResponse{1..1} | lookupOutcomeValue{1..1} ){0..*}
Attributes | None.
Source |
    <xs:element name="responseElseIf" type="ResponseIf.Type" />

### 4.2.177 "responseIf" Global Element Description

The XSD description for the "responseIf" Global Element is given in Table 4.2.177.

Table 4.2.177 XSD description for the "responseIf" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | ResponseIf.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | ResponseCondition.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}, ( xi:include{1..1} | responseCondition{1..1} | responseProcessingFragment{1..1} | setOutcomeValue{1..1} | exitResponse{1..1} | lookupOutcomeValue{1..1} ){0..*}
Attributes | None.
Source |
    <xs:element name="responseIf" type="ResponseIf.Type" />

### 4.2.178 "responseProcessingFragment" Global Element Description

The XSD description for the "responseProcessingFragment" Global Element is given in Table 4.2.178.

Table 4.2.178 XSD description for the "responseProcessingFragment" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | ResponseProcessingFragment.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | ResponseElse.Type, ResponseIf.Type, ResponseProcessing.Type, ResponseProcessingFragment.Type
Model | ( xi:include{1..1} | responseCondition{1..1} | responseProcessingFragment{1..1} | setOutcomeValue{1..1} | exitResponse{1..1} | lookupOutcomeValue{1..1} ){0..*}
Attributes | None.
Source |
    <xs:element name="responseProcessingFragment" type="ResponseProcessingFragment.Type" />

### 4.2.179 "round" Global Element Description

The XSD description for the "round" Global Element is given in Table 4.2.179.

Table 4.2.179 XSD description for the "round" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicSingle.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes | None.
Source |
    <xs:element name="round" type="LogicSingle.Type" />

### 4.2.180 "roundTo" Global Element Description

The XSD description for the "roundTo" Global Element is given in Table 4.2.180.

Table 4.2.180 XSD description for the "roundTo" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | RoundTo.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
roundingMode | [ Enumeration ] | No | Global | Required | -
figures | Union [ IntegerOrVariableRef ] | No | Global | Required | -
Source |
    <xs:element name="roundTo" type="RoundTo.Type" />

### 4.2.181 "rubricBlock" Global Element Description

The XSD description for the "rubricBlock" Global Element is given in Table 4.2.181.

Table 4.2.181 XSD description for the "rubricBlock" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | RubricBlock.Type
Type Hierarchy | BaseSequenceXBase.Type ^---RubricBlock.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | unbounded
Mixed | true
Used by |
ComplexTypes | AssessmentSection.Type, ItemBody.Type
Model | ( ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | templateBlock{1..1} | templateInline{1..1} | printedVariable{1..1} ){0..*}, stylesheet{0..*}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
use | xs:normalizedString | No | Global | Optional | -
view | Enumerated List of View.Type | No | Global | Required | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="rubricBlock" type="RubricBlock.Type" />

### 4.2.182 "qh5:ruby" Global Element Description

The XSD description for the "qh5:ruby" Global Element is given in Table 4.2.182.

Table 4.2.182 XSD description for the "qh5:ruby" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqtiv2p2_html5_v1p0
Diagram |
Type | [ Imported ( HTML5 ) ]
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).

### 4.2.183 "ssml11:s" Global Element Description

The XSD description for the "ssml11:s" Global Element is given in Table 4.2.183.

Table 4.2.183 XSD description for the "ssml11:s" Global Element.
Namespace | http://www.w3.org/2010/10/synthesis
Diagram |
Type | [ Imported ( SSMLv1p1 ) ]
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).

### 4.2.184 "samp" Global Element Description

The XSD description for the "samp" Global Element is given in Table 4.2.184.

Table 4.2.184 XSD description for the "samp" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="samp" type="HTMLText.Type" />

### 4.2.185 "ssml11:say-as" Global Element Description

The XSD description for the "ssml11:say-as" Global Element is given in Table 4.2.185.

Table 4.2.185 XSD description for the "ssml11:say-as" Global Element.
Namespace | http://www.w3.org/2010/10/synthesis
Diagram |
Type | [ Imported ( SSMLv1p1 ) ]
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).

### 4.2.186 "qh5:section" Global Element Description

The XSD description for the "qh5:section" Global Element is given in Table 4.2.186.

Table 4.2.186 XSD description for the "qh5:section" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqtiv2p2_html5_v1p0
Diagram |
Type | [ Imported ( HTML5 ) ]
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).

### 4.2.187 "selection" Global Element Description

The XSD description for the "selection" Global Element is given in Table 4.2.187.

Table 4.2.187 XSD description for the "selection" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Selection.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AssessmentSection.Type
Model | Namespace-based Extension
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
select | xs:int | No | Global | Required | -
withReplacement | xs:boolean | No | Global | Optional | false
##other | [ Namespace Extension ] | No | Global | Optional | -
Source |
    <xs:element name="selection" type="Selection.Type" />

### 4.2.188 "selectPointInteraction" Global Element Description

The XSD description for the "selectPointInteraction" Global Element is given in Table 4.2.188.

Table 4.2.188 XSD description for the "selectPointInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | SelectPointInteraction.Type
Type Hierarchy | BasePromptInteraction.Type ^---SelectPointInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, LI.Type, StimulusBody.Type, TDH.Type
Model | prompt{0..1}, object{1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
minChoices | xs:nonNegativeInteger | No | Global | Optional | 0
maxChoices | xs:nonNegativeInteger | No | Global | Optional | 0
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_07-RULE INTERACTION 7a-Assertion 1: "not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))"
Source |
    <xs:element name="selectPointInteraction" type="SelectPointInteraction.Type" />

### 4.2.189 "setCorrectResponse" Global Element Description

The XSD description for the "setCorrectResponse" Global Element is given in Table 4.2.189.

Table 4.2.189 XSD description for the "setCorrectResponse" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | SetValue.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | TemplateElse.Type, TemplateIf.Type, TemplateProcessing.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:element name="setCorrectResponse" type="SetValue.Type" />

### 4.2.190 "setDefaultValue" Global Element Description

The XSD description for the "setDefaultValue" Global Element is given in Table 4.2.190.

Table 4.2.190 XSD description for the "setDefaultValue" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | SetValue.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | TemplateElse.Type, TemplateIf.Type, TemplateProcessing.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:element name="setDefaultValue" type="SetValue.Type" />

### 4.2.191 "setOutcomeValue" Global Element Description

The XSD description for the "setOutcomeValue" Global Element is given in Table 4.2.191.

Table 4.2.191 XSD description for the "setOutcomeValue" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | SetValue.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | OutcomeElse.Type, OutcomeIf.Type, OutcomeProcessing.Type, OutcomeProcessingFragment.Type, ResponseElse.Type, ResponseIf.Type, ResponseProcessing.Type, ResponseProcessingFragment.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:element name="setOutcomeValue" type="SetValue.Type" />

### 4.2.192 "setTemplateValue" Global Element Description

The XSD description for the "setTemplateValue" Global Element is given in Table 4.2.192.

Table 4.2.192 XSD description for the "setTemplateValue" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | SetValue.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | TemplateElse.Type, TemplateIf.Type, TemplateProcessing.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:element name="setTemplateValue" type="SetValue.Type" />

### 4.2.193 "simpleAssociableChoice" Global Element Description

The XSD description for the "simpleAssociableChoice" Global Element is given in Table 4.2.193.

Table 4.2.193 XSD description for the "simpleAssociableChoice" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | SimpleAssociableChoice.Type
Type Hierarchy | BaseSequence.Type ^---SimpleAssociableChoice.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | unbounded
Mixed | true
Used by |
ComplexTypes | AssociateInteraction.Type, SimpleMatchSet.Type
Model | ( printedVariable{1..1} | feedbackBlock{1..1} | feedbackInline{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
fixed | xs:boolean | No | Global | Optional | -
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | -
matchGroup | List of IdentifierList.Type | No | Global | Optional | -
matchMax | xs:nonNegativeInteger | No | Global | Required | -
matchMin | xs:nonNegativeInteger | No | Global | Optional | 0
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION-RELATED_4-RULE INTERACTION-RELATED 4a-Assertion 1: "not(not(number(@matchMax)=0) and number(@matchMax) < number(@matchMin))"
Source |
    <xs:element name="simpleAssociableChoice" type="SimpleAssociableChoice.Type" />

### 4.2.194 "simpleChoice" Global Element Description

The XSD description for the "simpleChoice" Global Element is given in Table 4.2.194.

Table 4.2.194 XSD description for the "simpleChoice" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | SimpleChoice.Type
Type Hierarchy | BaseSequence.Type ^---SimpleChoice.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | unbounded
Mixed | true
Used by |
ComplexTypes | ChoiceInteraction.Type, OrderInteraction.Type
Model | ( printedVariable{1..1} | feedbackBlock{1..1} | feedbackInline{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
fixed | xs:boolean | No | Global | Optional | false
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | show
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="simpleChoice" type="SimpleChoice.Type" />

### 4.2.195 "simpleMatchSet" Global Element Description

The XSD description for the "simpleMatchSet" Global Element is given in Table 4.2.195.

Table 4.2.195 XSD description for the "simpleMatchSet" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | SimpleMatchSet.Type
Properties |
Content | complex
MinOccurs | 2
MaxOccurs | 2
Mixed | false
Used by |
ComplexTypes | MatchInteraction.Type
Model | simpleAssociableChoice{0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | No | Global | Optional | -
Source |
    <xs:element name="simpleMatchSet" type="SimpleMatchSet.Type" />

### 4.2.196 "sliderInteraction" Global Element Description

The XSD description for the "sliderInteraction" Global Element is given in Table 4.2.196.

Table 4.2.196 XSD description for the "sliderInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | SliderInteraction.Type
Type Hierarchy | BasePromptInteraction.Type ^---SliderInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, LI.Type, StimulusBody.Type, TDH.Type
Model | None
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
lowerBound | NonNegativeDouble.Type | No | Global | Required | -
upperBound | NonNegativeDouble.Type | No | Global | Required | -
step | NonNegativeDouble.Type | No | Global | Optional | 1.0
stepLabel | xs:boolean | No | Global | Optional | false
orientation | [ Enumeration ] | No | Global | Optional | -
reverse | xs:boolean | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_14-RULE INTERACTION 14a-Assertion 1: "not(number(@upperBound) < number(@lowerBound))"
Source |
    <xs:element name="sliderInteraction" type="SliderInteraction.Type" />

### 4.2.197 "small" Global Element Description

The XSD description for the "small" Global Element is given in Table 4.2.197.

Table 4.2.197 XSD description for the "small" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="small" type="HTMLText.Type" />

### 4.2.198 "span" Global Element Description

The XSD description for the "span" Global Element is given in Table 4.2.198.

Table 4.2.198 XSD description for the "span" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="span" type="HTMLText.Type" />

### 4.2.199 "ssml11:speak" Global Element Description

The XSD description for the "ssml11:speak" Global Element is given in Table 4.2.199.

Table 4.2.199 XSD description for the "ssml11:speak" Global Element.
Namespace | http://www.w3.org/2010/10/synthesis
Diagram |
Type | [ Imported ( SSMLv1p1 ) ]
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).

### 4.2.200 "statsOperator" Global Element Description

The XSD description for the "statsOperator" Global Element is given in Table 4.2.200.

Table 4.2.200 XSD description for the "statsOperator" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | StatsOperator.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
name | [ Enumeration ] | No | Global | Required | -
Source |
    <xs:element name="statsOperator" type="StatsOperator.Type" />

### 4.2.201 "stimulusBody" Global Element Description

The XSD description for the "stimulusBody" Global Element is given in Table 4.2.201.

Table 4.2.201 XSD description for the "stimulusBody" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | StimulusBody.Type
Type Hierarchy | BaseSequence.Type ^---StimulusBody.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AssessmentStimulus.Type
Model | ( positionObjectStage{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | feedbackBlock{1..1} | templateBlock{1..1} | infoControl{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | hr{1..1} | blockquote{1..1} | table{1..1} | div{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:audio{1..1} | qh5:figure{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:video{1..1} ){1..1} ){1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="stimulusBody" type="StimulusBody.Type" />

### 4.2.202 "stringMatch" Global Element Description

The XSD description for the "stringMatch" Global Element is given in Table 4.2.202.

Table 4.2.202 XSD description for the "stringMatch" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | StringMatch.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
caseSensitive | xs:boolean | No | Global | Required | -
substring | xs:boolean | No | Global | Optional | false
Source |
    <xs:element name="stringMatch" type="StringMatch.Type" />

### 4.2.203 "strong" Global Element Description

The XSD description for the "strong" Global Element is given in Table 4.2.203.

Table 4.2.203 XSD description for the "strong" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="strong" type="HTMLText.Type" />

### 4.2.204 "stylesheet" Global Element Description

The XSD description for the "stylesheet" Global Element is given in Table 4.2.204.

Table 4.2.204 XSD description for the "stylesheet" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | StyleSheet.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---StyleSheet.Type
Properties |
Content | simple
MinOccurs | 0
MaxOccurs | unbounded
Used by |
ComplexTypes | AssessmentItem.Type, AssessmentStimulus.Type, AssessmentTest.Type, FeedbackBlock.Type, ModalFeedback.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
href | xs:anyURI | No | Global | Required | -
type | MimeType.Type | No | Global | Required | -
media | xs:normalizedString | No | Global | Optional | -
title | xs:normalizedString | No | Global | Optional | -
Source |
    <xs:element name="stylesheet" type="StyleSheet.Type" />

### 4.2.205 "sub" Global Element Description

The XSD description for the "sub" Global Element is given in Table 4.2.205.

Table 4.2.205 XSD description for the "sub" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="sub" type="HTMLText.Type" />

### 4.2.206 "ssml11:sub" Global Element Description

The XSD description for the "ssml11:sub" Global Element is given in Table 4.2.206.

Table 4.2.206 XSD description for the "ssml11:sub" Global Element.
Namespace | http://www.w3.org/2010/10/synthesis
Diagram |
Type | [ Imported ( SSMLv1p1 ) ]
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).

### 4.2.207 "substring" Global Element Description

The XSD description for the "substring" Global Element is given in Table 4.2.207.

Table 4.2.207 XSD description for the "substring" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Substring.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
caseSensitive | xs:boolean | No | Global | Required | -
Source |
    <xs:element name="substring" type="Substring.Type" />

### 4.2.208 "subtract" Global Element Description

The XSD description for the "subtract" Global Element is given in Table 4.2.208.

Table 4.2.208 XSD description for the "subtract" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicPair.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes | None.
Source |
    <xs:element name="subtract" type="LogicPair.Type" />

### 4.2.209 "sum" Global Element Description

The XSD description for the "sum" Global Element is given in Table 4.2.209.

Table 4.2.209 XSD description for the "sum" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | NumericLogic1toMany.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( sum{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | null{1..1} | delete{1..1} | index{1..1} | power{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | integerDivide{1..1} | integerModulus{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | baseValue{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} | randomFloat{1..1} ){1..*}
Attributes | None.
Source |
    <xs:element name="sum" type="NumericLogic1toMany.Type" />

### 4.2.210 "sup" Global Element Description

The XSD description for the "sup" Global Element is given in Table 4.2.210.

Table 4.2.210 XSD description for the "sup" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="sup" type="HTMLText.Type" />

### 4.2.211 "table" Global Element Description

The XSD description for the "table" Global Element is given in Table 4.2.211.

Table 4.2.211 XSD description for the "table" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Table.Type
Type Hierarchy | BaseSequenceXBase.Type ^---Table.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | caption{0..1}, col{0..*}, colgroup{0..*}, thead{0..1}, tfoot{0..1}, tbody{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
summary | xs:string | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="table" type="Table.Type" />

### 4.2.212 "tbody" Global Element Description

The XSD description for the "tbody" Global Element is given in Table 4.2.212.

Table 4.2.212 XSD description for the "tbody" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TablePart.Type
Type Hierarchy | BaseSequence.Type ^---TablePart.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | unbounded
Mixed | false
Used by |
ComplexTypes | Table.Type
Model | tr{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="tbody" type="TablePart.Type" />

### 4.2.213 "td" Global Element Description

The XSD description for the "td" Global Element is given in Table 4.2.213.

Table 4.2.213 XSD description for the "td" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TDH.Type
Type Hierarchy | BaseSequence.Type ^---TDH.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | TR.Type
Model | ( printedVariable{1..1} | feedbackBlock{1..1} | hottext{1..1} | feedbackInline{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | textEntryInteraction{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
headers | List of IdentifierList.Type | No | Global | Optional | -
scope | [ Enumeration ] | No | Global | Optional | -
abbr | xs:string | No | Global | Optional | -
axis | xs:string | No | Global | Optional | -
rowspan | xs:int | No | Global | Optional | -
colspan | xs:int | No | Global | Optional | -
align | [ Enumeration ] | No | Global | Optional | -
valign | [ Enumeration ] | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="td" type="TDH.Type" />

### 4.2.214 "templateBlock" Global Element Description

The XSD description for the "templateBlock" Global Element is given in Table 4.2.214.

Table 4.2.214 XSD description for the "templateBlock" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TemplateBlock.Type
Type Hierarchy | BaseSequenceXBase.Type ^---TemplateBlock.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | ( ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | templateBlock{1..1} | templateInline{1..1} | feedbackBlock{1..1} | feedbackInline{1..1} | printedVariable{1..1} ){0..*}, stylesheet{0..*}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
templateIdentifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Optional | show
identifier | Identifier.Type | No | Global | Required | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="templateBlock" type="TemplateBlock.Type" />

### 4.2.215 "templateCondition" Global Element Description

The XSD description for the "templateCondition" Global Element is given in Table 4.2.215.

Table 4.2.215 XSD description for the "templateCondition" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TemplateCondition.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | TemplateElse.Type, TemplateIf.Type, TemplateProcessing.Type
Model | templateIf{1..1}, templateElseIf{0..*}, templateElse{0..1}
Attributes | None.
Source |
    <xs:element name="templateCondition" type="TemplateCondition.Type" />

### 4.2.216 "templateConstraint" Global Element Description

The XSD description for the "templateConstraint" Global Element is given in Table 4.2.216.

Table 4.2.216 XSD description for the "templateConstraint" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TemplateConstraint.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | TemplateElse.Type, TemplateIf.Type, TemplateProcessing.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes | None.
Source |
    <xs:element name="templateConstraint" type="TemplateConstraint.Type" />

### 4.2.217 "templateDeclaration" Global Element Description

The XSD description for the "templateDeclaration" Global Element is given in Table 4.2.217.

Table 4.2.217 XSD description for the "templateDeclaration" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TemplateDeclaration.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | unbounded
Mixed | false
Used by |
ComplexTypes | AssessmentItem.Type
Model | defaultValue{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
cardinality | [ Enumeration ] | No | Global | Required | -
baseType | [ Enumeration ] | No | Global | Optional | -
paramVariable | xs:boolean | No | Global | Optional | false
mathVariable | xs:boolean | No | Global | Optional | false
Source |
    <xs:element name="templateDeclaration" type="TemplateDeclaration.Type" />

### 4.2.218 "templateDefault" Global Element Description

The XSD description for the "templateDefault" Global Element is given in Table 4.2.218.

Table 4.2.218 XSD description for the "templateDefault" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TemplateDefault.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | unbounded
Mixed | false
Used by |
ComplexTypes | AssessmentItemRef.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
templateIdentifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:element name="templateDefault" type="TemplateDefault.Type" />

### 4.2.219 "templateElse" Global Element Description

The XSD description for the "templateElse" Global Element is given in Table 4.2.219.

Table 4.2.219 XSD description for the "templateElse" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TemplateElse.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | TemplateCondition.Type
Model | ( setTemplateValue{1..1} | exitTemplate{1..1} | templateCondition{1..1} | setDefaultValue{1..1} | setCorrectResponse{1..1} | templateConstraint{1..1} ){0..*}
Attributes | None.
Source |
    <xs:element name="templateElse" type="TemplateElse.Type" />

### 4.2.220 "templateElseIf" Global Element Description

The XSD description for the "templateElseIf" Global Element is given in Table 4.2.220.

Table 4.2.220 XSD description for the "templateElseIf" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TemplateIf.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | unbounded
Mixed | false
Used by |
ComplexTypes | TemplateCondition.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}, ( setTemplateValue{1..1} | exitTemplate{1..1} | templateCondition{1..1} | setDefaultValue{1..1} | setCorrectResponse{1..1} | templateConstraint{1..1} ){0..*}
Attributes | None.
Source |
    <xs:element name="templateElseIf" type="TemplateIf.Type" />

### 4.2.221 "templateIf" Global Element Description

The XSD description for the "templateIf" Global Element is given in Table 4.2.221.

Table 4.2.221 XSD description for the "templateIf" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TemplateIf.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | TemplateCondition.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}, ( setTemplateValue{1..1} | exitTemplate{1..1} | templateCondition{1..1} | setDefaultValue{1..1} | setCorrectResponse{1..1} | templateConstraint{1..1} ){0..*}
Attributes | None.
Source |
    <xs:element name="templateIf" type="TemplateIf.Type" />

### 4.2.222 "templateInline" Global Element Description

The XSD description for the "templateInline" Global Element is given in Table 4.2.222.

Table 4.2.222 XSD description for the "templateInline" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TemplateInline.Type
Type Hierarchy | BaseSequenceXBase.Type ^---TemplateInline.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Q.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
templateIdentifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Optional | show
identifier | Identifier.Type | No | Global | Required | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="templateInline" type="TemplateInline.Type" />

### 4.2.223 "templateProcessing" Global Element Description

The XSD description for the "templateProcessing" Global Element is given in Table 4.2.223.

Table 4.2.223 XSD description for the "templateProcessing" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TemplateProcessing.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AssessmentItem.Type
Model | ( setTemplateValue{1..1} | exitTemplate{1..1} | templateCondition{1..1} | setDefaultValue{1..1} | setCorrectResponse{1..1} | templateConstraint{1..1} ){1..*}
Attributes | None.
Source |
    <xs:element name="templateProcessing" type="TemplateProcessing.Type" />

### 4.2.224 "testFeedback" Global Element Description

The XSD description for the "testFeedback" Global Element is given in Table 4.2.224.

Table 4.2.224 XSD description for the "testFeedback" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TestFeedback.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | unbounded
Mixed | true
Used by |
ComplexTypes | AssessmentTest.Type, TestPart.Type
Model | ( printedVariable{1..1} | hottext{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}, stylesheet{0..*}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
access | [ Enumeration ] | No | Global | Required | -
outcomeIdentifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Required | -
identifier | Identifier.Type | No | Global | Required | -
title | xs:normalizedString | No | Global | Optional | -
Source |
    <xs:element name="testFeedback" type="TestFeedback.Type" />

### 4.2.225 "testPart" Global Element Description

The XSD description for the "testPart" Global Element is given in Table 4.2.225.

Table 4.2.225 XSD description for the "testPart" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TestPart.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | unbounded
Mixed | false
Used by |
ComplexTypes | AssessmentTest.Type
Model | preCondition{0..*}, branchRule{0..*}, itemSessionControl{0..1}, timeLimits{0..1}, ( assessmentSection{1..1} | assessmentSectionRef{1..1} ){1..*}, testFeedback{0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | xs:normalizedString | No | Global | Required | -
navigationMode | [ Enumeration ] | No | Global | Required | -
submissionMode | [ Enumeration ] | No | Global | Required | -
Schematron Rules |
Explicit Rules | RULE_SET_GENERAL_2-RULE GENERAL 2b-Assertion 1: "not(@identifier=preceding-sibling::qti:testPart/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2b-Assertion 2: "not(@identifier=descendant::qti:assessmentSection/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2b-Assertion 3: "not(@identifier=qti:assessmentSectionRef/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2b-Assertion 4: "not(@identifier=descendant::qti:assessmentSection/qti:assessmentSectionRef/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2b-Assertion 5: "not(@identifier=descendant::qti:assessmentSection/qti:assessmentItemRef/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2c-Assertion 1: "not(@identifier=preceding-sibling::qti:assessmentSection/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2c-Assertion 2: "not(@identifier=descendant::qti:assessmentSection/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2c-Assertion 3: "not(@identifier=descendant::qti:assessmentSectionRef/@identifier)" RULE_SET_GENERAL_2-RULE GENERAL 2c-Assertion 4: "not(@identifier=descendant::qti:assessmentItemRef/@identifier)"
Source |
    <xs:element name="testPart" type="TestPart.Type" />

### 4.2.226 "testVariables" Global Element Description

The XSD description for the "testVariables" Global Element is given in Table 4.2.226.

Table 4.2.226 XSD description for the "testVariables" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TestVariables.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---TestVariables.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sectionIdentifier | Identifier.Type | No | Global | Optional | -
includeCategory | List of IdentifierList.Type | No | Global | Optional | -
excludeCategory | List of IdentifierList.Type | No | Global | Optional | -
variableIdentifier | Identifier.Type | No | Global | Required | -
weightIdentifier | Identifier.Type | No | Global | Optional | -
baseType | [ Enumeration ] | No | Global | Optional | -
Source |
    <xs:element name="testVariables" type="TestVariables.Type" />

### 4.2.227 "textEntryInteraction" Global Element Description

The XSD description for the "textEntryInteraction" Global Element is given in Table 4.2.227.

Table 4.2.227 XSD description for the "textEntryInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TextEntryInteraction.Type
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---TextEntryInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | A.Type, Caption.Type, DD.Type, DT.Type, Div.Type, HTMLText.Type, LI.Type, Q.Type, TDH.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
responseIdentifier | UniqueIdentifierRef.Type | No | Global | Required | -
base | xs:int | No | Global | Optional | 10
stringIdentifier | UniqueIdentifierRef.Type | No | Global | Optional | -
expectedLength | xs:nonNegativeInteger | No | Global | Optional | -
patternMask | xs:string | No | Global | Optional | -
placeholderText | xs:string | No | Global | Optional | -
format | xs:normalizedString | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_01-RULE INTERACTION 1a-Assertion 1: "not(@stringIdentifier=@responseIdentifier)" RULE_SET_INTERACTION_01-RULE INTERACTION 1b-Assertion 1: "//qti:responseDeclaration[@baseType='string'] or //qti:responseDeclaration[@baseType='float'] or //qti:responseDeclaration[@baseType='integer']"
Source |
    <xs:element name="textEntryInteraction" type="TextEntryInteraction.Type" />

### 4.2.228 "tfoot" Global Element Description

The XSD description for the "tfoot" Global Element is given in Table 4.2.228.

Table 4.2.228 XSD description for the "tfoot" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TablePart.Type
Type Hierarchy | BaseSequence.Type ^---TablePart.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | Table.Type
Model | tr{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="tfoot" type="TablePart.Type" />

### 4.2.229 "th" Global Element Description

The XSD description for the "th" Global Element is given in Table 4.2.229.

Table 4.2.229 XSD description for the "th" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TDH.Type
Type Hierarchy | BaseSequence.Type ^---TDH.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | TR.Type
Model | ( printedVariable{1..1} | feedbackBlock{1..1} | hottext{1..1} | feedbackInline{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | textEntryInteraction{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
headers | List of IdentifierList.Type | No | Global | Optional | -
scope | [ Enumeration ] | No | Global | Optional | -
abbr | xs:string | No | Global | Optional | -
axis | xs:string | No | Global | Optional | -
rowspan | xs:int | No | Global | Optional | -
colspan | xs:int | No | Global | Optional | -
align | [ Enumeration ] | No | Global | Optional | -
valign | [ Enumeration ] | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="th" type="TDH.Type" />

### 4.2.230 "thead" Global Element Description

The XSD description for the "thead" Global Element is given in Table 4.2.230.

Table 4.2.230 XSD description for the "thead" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TablePart.Type
Type Hierarchy | BaseSequence.Type ^---TablePart.Type
Properties |
Content | complex
MinOccurs | 0
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | Table.Type
Model | tr{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="thead" type="TablePart.Type" />

### 4.2.231 "timeLimits" Global Element Description

The XSD description for the "timeLimits" Global Element is given in Table 4.2.231.

Table 4.2.231 XSD description for the "timeLimits" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TimeLimits.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---TimeLimits.Type
Properties |
Content | simple
MinOccurs | 0
MaxOccurs | 1
Used by |
ComplexTypes | AssessmentItemRef.Type, AssessmentSection.Type, AssessmentTest.Type, TestPart.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
minTime | NonNegativeDouble.Type | No | Global | Optional | -
maxTime | NonNegativeDouble.Type | No | Global | Optional | -
allowLateSubmission | xs:boolean | No | Global | Optional | false
Schematron Rules |
Explicit Rules | RULE_SET_SPECIFIC_CLASS_2-RULE SPECIFIC CLASS 2a-Assertion 1: "not(number(@maxTime) < number(@minTime))"
Source |
    <xs:element name="timeLimits" type="TimeLimits.Type" />

### 4.2.232 "tr" Global Element Description

The XSD description for the "tr" Global Element is given in Table 4.2.232.

Table 4.2.232 XSD description for the "tr" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TR.Type
Type Hierarchy | BaseSequence.Type ^---TR.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | unbounded
Mixed | false
Used by |
ComplexTypes | TablePart.Type
Model | ( td{1..1} | th{1..1} ){1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="tr" type="TR.Type" />

### 4.2.233 "truncate" Global Element Description

The XSD description for the "truncate" Global Element is given in Table 4.2.233.

Table 4.2.233 XSD description for the "truncate" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | LogicSingle.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes | None.
Source |
    <xs:element name="truncate" type="LogicSingle.Type" />

### 4.2.234 "tt" Global Element Description

The XSD description for the "tt" Global Element is given in Table 4.2.234.

Table 4.2.234 XSD description for the "tt" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="tt" type="HTMLText.Type" />

### 4.2.235 "ul" Global Element Description

The XSD description for the "ul" Global Element is given in Table 4.2.235.

Table 4.2.235 XSD description for the "ul" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | OUL.Type
Type Hierarchy | BaseSequenceXBase.Type ^---OUL.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | li{0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="ul" type="OUL.Type" />

### 4.2.236 "uploadInteraction" Global Element Description

The XSD description for the "uploadInteraction" Global Element is given in Table 4.2.236.

Table 4.2.236 XSD description for the "uploadInteraction" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | UploadInteraction.Type
Type Hierarchy | BasePromptInteraction.Type ^---UploadInteraction.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | false
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, ItemBody.Type, LI.Type, StimulusBody.Type, TDH.Type
Model | None
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
type | MimeType.Type | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Explicit Rules | RULE_SET_INTERACTION_16-RULE INTERACTION 16a-Assertion 1: "//qti:responseDeclaration[@baseType='file']"
Source |
    <xs:element name="uploadInteraction" type="UploadInteraction.Type" />

### 4.2.237 "value" Global Element Description

The XSD description for the "value" Global Element is given in Table 4.2.237.

Table 4.2.237 XSD description for the "value" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Value.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | unbounded
Used by |
ComplexTypes | CorrectResponse.Type, DefaultValue.Type
Model | N/A
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
fieldIdentifier | Identifier.Type | No | Global | Optional | -
baseType | [ Enumeration ] | No | Global | Optional | -
Source |
    <xs:element name="value" type="Value.Type" />

### 4.2.238 "var" Global Element Description

The XSD description for the "var" Global Element is given in Table 4.2.238.

Table 4.2.238 XSD description for the "var" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | HTMLText.Type
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="var" type="HTMLText.Type" />

### 4.2.239 "variable" Global Element Description

The XSD description for the "variable" Global Element is given in Table 4.2.239.

Table 4.2.239 XSD description for the "variable" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Variable.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---Variable.Type
Properties |
Content | simple
MinOccurs | 1
MaxOccurs | 1
Used by |
ComplexTypes | AnyN.Type, BranchRule.Type, CustomOperator.Type, Equal.Type, EqualRounded.Type, FieldValue.Type, Index.Type, Inside.Type, Logic0toMany.Type, Logic1toMany.Type, LogicPair.Type, LogicSingle.Type, LookupOutcomeValue.Type, MathOperator.Type, NumericLogic1toMany.Type, OutcomeIf.Type, PatternMatch.Type, Repeat.Type, ResponseIf.Type, RoundTo.Type, SetValue.Type, StatsOperator.Type, StringMatch.Type, Substring.Type, TemplateConstraint.Type, TemplateDefault.Type, TemplateIf.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
weightIdentifier | Identifier.Type | No | Global | Optional | -
Source |
    <xs:element name="variable" type="Variable.Type" />

### 4.2.240 "variableMapping" Global Element Description

The XSD description for the "variableMapping" Global Element is given in Table 4.2.240.

Table 4.2.240 XSD description for the "variableMapping" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | VariableMapping.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---VariableMapping.Type
Properties |
Content | simple
MinOccurs | 0
MaxOccurs | unbounded
Used by |
ComplexTypes | AssessmentItemRef.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sourceIdentifier | Identifier.Type | No | Global | Required | -
targetIdentifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:element name="variableMapping" type="VariableMapping.Type" />

### 4.2.241 "qh5:video" Global Element Description

The XSD description for the "qh5:video" Global Element is given in Table 4.2.241.

Table 4.2.241 XSD description for the "qh5:video" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqtiv2p2_html5_v1p0
Diagram |
Type | [ Imported ( HTML5 ) ]
Used by |
ComplexTypes | BlockQuote.Type, DD.Type, Div.Type, FeedbackBlock.Type, GapMatchInteraction.Type, HotTextInteraction.Type, InfoControl.Type, ItemBody.Type, LI.Type, MediaInteraction.Type, ModalFeedback.Type, Object.Type, Prompt.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd).

### 4.2.242 "ssml11:voice" Global Element Description

The XSD description for the "ssml11:voice" Global Element is given in Table 4.2.242.

Table 4.2.242 XSD description for the "ssml11:voice" Global Element.
Namespace | http://www.w3.org/2010/10/synthesis
Diagram |
Type | [ Imported ( SSMLv1p1 ) ]
Used by |
ComplexTypes | A.Type, BDO.Type, Caption.Type, DD.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, GapText.Type, HTMLText.Type, HotText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Label.Type, ModalFeedback.Type, Object.Type, Prompt.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, TDH.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type, TestFeedback.Type
Model | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Attributes | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).
Source | See import XSD (http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd).

### 4.2.243 "weight" Global Element Description

The XSD description for the "weight" Global Element is given in Table 4.2.243.

Table 4.2.243 XSD description for the "weight" Global Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Weight.Type
Type Hierarchy | EmptyPrimitiveType.Type ^---Weight.Type
Properties |
Content | simple
MinOccurs | 0
MaxOccurs | unbounded
Used by |
ComplexTypes | AssessmentItemRef.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
value | xs:double | No | Global | Required | -
Source |
    <xs:element name="weight" type="Weight.Type" />

## 4.3 Attribute Group Descriptions

The syntax and semantics for the Attribute Group XSD representations is described in Appendix A1.9.

### 4.3.1 "abbr.TDH.Attr" Attribute Group Description

The XSD description for the "abbr.TDH.Attr" Attribute Group is given in Table 4.3.1.

Table 4.3.1 XSD description for the "abbr.TDH.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TDH.Type
Elements | td/TR.Type, th/TR.Type
Source |
    <xs:attributeGroup name="abbr.TDH.Attr">
        <xs:attribute name="abbr" use="optional" type="xs:string" />
    </xs:attributeGroup>

### 4.3.2 "access.TestFeedback.Attr" Attribute Group Description

The XSD description for the "access.TestFeedback.Attr" Attribute Group is given in Table 4.3.2.

Table 4.3.2 XSD description for the "access.TestFeedback.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TestFeedback.Type
Elements | testFeedback/AssessmentTest.Type, testFeedback/TestPart.Type
Source |
    <xs:attributeGroup name="access.TestFeedback.Attr">
        <xs:attribute name="access" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="atEnd" />
                    <xs:enumeration value="during" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.3 "adaptive.AssessmentItem.Attr" Attribute Group Description

The XSD description for the "adaptive.AssessmentItem.Attr" Attribute Group is given in Table 4.3.3.

Table 4.3.3 XSD description for the "adaptive.AssessmentItem.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentItem
ComplexTypes | AssessmentItem.Type
Source |
    <xs:attributeGroup name="adaptive.AssessmentItem.Attr">
        <xs:attribute name="adaptive" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.4 "align.TDH.Attr" Attribute Group Description

The XSD description for the "align.TDH.Attr" Attribute Group is given in Table 4.3.4.

Table 4.3.4 XSD description for the "align.TDH.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TDH.Type
Elements | td/TR.Type, th/TR.Type
Source |
    <xs:attributeGroup name="align.TDH.Attr">
        <xs:attribute name="align" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="left" />
                    <xs:enumeration value="center" />
                    <xs:enumeration value="right" />
                    <xs:enumeration value="justify" />
                    <xs:enumeration value="char" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.5 "allowComment.ItemSessionControl.Attr" Attribute Group Description

The XSD description for the "allowComment.ItemSessionControl.Attr" Attribute Group is given in Table 4.3.5.

Table 4.3.5 XSD description for the "allowComment.ItemSessionControl.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ItemSessionControl.Type
Elements | itemSessionControl/AssessmentItemRef.Type, itemSessionControl/AssessmentSection.Type, itemSessionControl/TestPart.Type
Source |
    <xs:attributeGroup name="allowComment.ItemSessionControl.Attr">
        <xs:attribute name="allowComment" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.6 "allowLateSubmission.TimeLimits.Attr" Attribute Group Description

The XSD description for the "allowLateSubmission.TimeLimits.Attr" Attribute Group is given in Table 4.3.6.

Table 4.3.6 XSD description for the "allowLateSubmission.TimeLimits.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TimeLimits.Type
Elements | timeLimits/AssessmentItemRef.Type, timeLimits/AssessmentSection.Type, timeLimits/AssessmentTest.Type, timeLimits/TestPart.Type
Source |
    <xs:attributeGroup name="allowLateSubmission.TimeLimits.Attr">
        <xs:attribute name="allowLateSubmission" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.7 "allowReview.ItemSessionControl.Attr" Attribute Group Description

The XSD description for the "allowReview.ItemSessionControl.Attr" Attribute Group is given in Table 4.3.7.

Table 4.3.7 XSD description for the "allowReview.ItemSessionControl.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ItemSessionControl.Type
Elements | itemSessionControl/AssessmentItemRef.Type, itemSessionControl/AssessmentSection.Type, itemSessionControl/TestPart.Type
Source |
    <xs:attributeGroup name="allowReview.ItemSessionControl.Attr">
        <xs:attribute name="allowReview" use="optional" default="true" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.8 "allowSkipping.ItemSessionControl.Attr" Attribute Group Description

The XSD description for the "allowSkipping.ItemSessionControl.Attr" Attribute Group is given in Table 4.3.8.

Table 4.3.8 XSD description for the "allowSkipping.ItemSessionControl.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ItemSessionControl.Type
Elements | itemSessionControl/AssessmentItemRef.Type, itemSessionControl/AssessmentSection.Type, itemSessionControl/TestPart.Type
Source |
    <xs:attributeGroup name="allowSkipping.ItemSessionControl.Attr">
        <xs:attribute name="allowSkipping" use="optional" default="true" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.9 "alt.Img.Attr" Attribute Group Description

The XSD description for the "alt.Img.Attr" Attribute Group is given in Table 4.3.9.

Table 4.3.9 XSD description for the "alt.Img.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Img.Type
Elements | img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="alt.Img.Attr">
        <xs:attribute name="alt" use="required" type="xs:string" />
    </xs:attributeGroup>

### 4.3.10 "aria-controls.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "aria-controls.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.10.

Table 4.3.10 XSD description for the "aria-controls.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="aria-controls.BasePromptInteraction.Attr">
        <xs:attribute name="aria-controls" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.11 "aria-controls.BaseSequence.Attr" Attribute Group Description

The XSD description for the "aria-controls.BaseSequence.Attr" Attribute Group is given in Table 4.3.11.

Table 4.3.11 XSD description for the "aria-controls.BaseSequence.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequence.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type, caption/Table.Type, colgroup/Table.Type, gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type, gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type, infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type, inlineChoice/InlineChoiceInteraction.Type, li/OUL.Type, prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type, simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type, simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type, stimulusBody/AssessmentStimulus.Type, tbody/Table.Type, td/TR.Type, tfoot/Table.Type, th/TR.Type, thead/Table.Type, tr/TablePart.Type
Source |
    <xs:attributeGroup name="aria-controls.BaseSequence.Attr">
        <xs:attribute name="aria-controls" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.12 "aria-controls.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "aria-controls.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.12.

Table 4.3.12 XSD description for the "aria-controls.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-controls.BaseSequenceFull.Attr">
        <xs:attribute name="aria-controls" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.13 "aria-controls.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "aria-controls.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.13.

Table 4.3.13 XSD description for the "aria-controls.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="aria-controls.BaseSequenceRIdent.Attr">
        <xs:attribute name="aria-controls" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.14 "aria-controls.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "aria-controls.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.14.

Table 4.3.14 XSD description for the "aria-controls.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="aria-controls.BaseSequenceXBase.Attr">
        <xs:attribute name="aria-controls" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.15 "aria-controls.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "aria-controls.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.15.

Table 4.3.15 XSD description for the "aria-controls.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-controls.BaseSequenceXBaseEmpty.Attr">
        <xs:attribute name="aria-controls" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.16 "aria-describedby.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "aria-describedby.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.16.

Table 4.3.16 XSD description for the "aria-describedby.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="aria-describedby.BasePromptInteraction.Attr">
        <xs:attribute name="aria-describedby" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.17 "aria-describedby.BaseSequence.Attr" Attribute Group Description

The XSD description for the "aria-describedby.BaseSequence.Attr" Attribute Group is given in Table 4.3.17.

Table 4.3.17 XSD description for the "aria-describedby.BaseSequence.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequence.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type, caption/Table.Type, colgroup/Table.Type, gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type, gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type, infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type, inlineChoice/InlineChoiceInteraction.Type, li/OUL.Type, prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type, simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type, simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type, stimulusBody/AssessmentStimulus.Type, tbody/Table.Type, td/TR.Type, tfoot/Table.Type, th/TR.Type, thead/Table.Type, tr/TablePart.Type
Source |
    <xs:attributeGroup name="aria-describedby.BaseSequence.Attr">
        <xs:attribute name="aria-describedby" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.18 "aria-describedby.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "aria-describedby.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.18.

Table 4.3.18 XSD description for the "aria-describedby.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-describedby.BaseSequenceFull.Attr">
        <xs:attribute name="aria-describedby" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.19 "aria-describedby.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "aria-describedby.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.19.

Table 4.3.19 XSD description for the "aria-describedby.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="aria-describedby.BaseSequenceRIdent.Attr">
        <xs:attribute name="aria-describedby" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.20 "aria-describedby.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "aria-describedby.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.20.

Table 4.3.20 XSD description for the "aria-describedby.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="aria-describedby.BaseSequenceXBase.Attr">
        <xs:attribute name="aria-describedby" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.21 "aria-describedby.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "aria-describedby.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.21.

Table 4.3.21 XSD description for the "aria-describedby.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-describedby.BaseSequenceXBaseEmpty.Attr">
        <xs:attribute name="aria-describedby" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.22 "aria-flowsto.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "aria-flowsto.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.22.

Table 4.3.22 XSD description for the "aria-flowsto.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="aria-flowsto.BasePromptInteraction.Attr">
        <xs:attribute name="aria-flowsto" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.23 "aria-flowsto.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "aria-flowsto.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.23.

Table 4.3.23 XSD description for the "aria-flowsto.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-flowsto.BaseSequenceXBaseEmpty.Attr">
        <xs:attribute name="aria-flowsto" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.24 "aria-flowto.BaseSequence.Attr" Attribute Group Description

The XSD description for the "aria-flowto.BaseSequence.Attr" Attribute Group is given in Table 4.3.24.

Table 4.3.24 XSD description for the "aria-flowto.BaseSequence.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequence.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type, caption/Table.Type, colgroup/Table.Type, gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type, gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type, infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type, inlineChoice/InlineChoiceInteraction.Type, li/OUL.Type, prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type, simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type, simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type, stimulusBody/AssessmentStimulus.Type, tbody/Table.Type, td/TR.Type, tfoot/Table.Type, th/TR.Type, thead/Table.Type, tr/TablePart.Type
Source |
    <xs:attributeGroup name="aria-flowto.BaseSequence.Attr">
        <xs:attribute name="aria-flowto" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.25 "aria-flowto.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "aria-flowto.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.25.

Table 4.3.25 XSD description for the "aria-flowto.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-flowto.BaseSequenceFull.Attr">
        <xs:attribute name="aria-flowto" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.26 "aria-flowto.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "aria-flowto.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.26.

Table 4.3.26 XSD description for the "aria-flowto.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="aria-flowto.BaseSequenceRIdent.Attr">
        <xs:attribute name="aria-flowto" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.27 "aria-flowto.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "aria-flowto.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.27.

Table 4.3.27 XSD description for the "aria-flowto.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="aria-flowto.BaseSequenceXBase.Attr">
        <xs:attribute name="aria-flowto" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.28 "aria-label.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "aria-label.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.28.

Table 4.3.28 XSD description for the "aria-label.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="aria-label.BasePromptInteraction.Attr">
        <xs:attribute name="aria-label" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.29 "aria-label.BaseSequence.Attr" Attribute Group Description

The XSD description for the "aria-label.BaseSequence.Attr" Attribute Group is given in Table 4.3.29.

Table 4.3.29 XSD description for the "aria-label.BaseSequence.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequence.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type, caption/Table.Type, colgroup/Table.Type, gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type, gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type, infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type, inlineChoice/InlineChoiceInteraction.Type, li/OUL.Type, prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type, simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type, simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type, stimulusBody/AssessmentStimulus.Type, tbody/Table.Type, td/TR.Type, tfoot/Table.Type, th/TR.Type, thead/Table.Type, tr/TablePart.Type
Source |
    <xs:attributeGroup name="aria-label.BaseSequence.Attr">
        <xs:attribute name="aria-label" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.30 "aria-label.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "aria-label.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.30.

Table 4.3.30 XSD description for the "aria-label.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-label.BaseSequenceFull.Attr">
        <xs:attribute name="aria-label" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.31 "aria-label.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "aria-label.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.31.

Table 4.3.31 XSD description for the "aria-label.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="aria-label.BaseSequenceRIdent.Attr">
        <xs:attribute name="aria-label" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.32 "aria-label.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "aria-label.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.32.

Table 4.3.32 XSD description for the "aria-label.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="aria-label.BaseSequenceXBase.Attr">
        <xs:attribute name="aria-label" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.33 "aria-label.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "aria-label.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.33.

Table 4.3.33 XSD description for the "aria-label.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-label.BaseSequenceXBaseEmpty.Attr">
        <xs:attribute name="aria-label" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.34 "aria-labelledby.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "aria-labelledby.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.34.

Table 4.3.34 XSD description for the "aria-labelledby.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="aria-labelledby.BasePromptInteraction.Attr">
        <xs:attribute name="aria-labelledby" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.35 "aria-labelledby.BaseSequence.Attr" Attribute Group Description

The XSD description for the "aria-labelledby.BaseSequence.Attr" Attribute Group is given in Table 4.3.35.

Table 4.3.35 XSD description for the "aria-labelledby.BaseSequence.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequence.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type, caption/Table.Type, colgroup/Table.Type, gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type, gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type, infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type, inlineChoice/InlineChoiceInteraction.Type, li/OUL.Type, prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type, simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type, simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type, stimulusBody/AssessmentStimulus.Type, tbody/Table.Type, td/TR.Type, tfoot/Table.Type, th/TR.Type, thead/Table.Type, tr/TablePart.Type
Source |
    <xs:attributeGroup name="aria-labelledby.BaseSequence.Attr">
        <xs:attribute name="aria-labelledby" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.36 "aria-labelledby.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "aria-labelledby.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.36.

Table 4.3.36 XSD description for the "aria-labelledby.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-labelledby.BaseSequenceFull.Attr">
        <xs:attribute name="aria-labelledby" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.37 "aria-labelledby.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "aria-labelledby.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.37.

Table 4.3.37 XSD description for the "aria-labelledby.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="aria-labelledby.BaseSequenceRIdent.Attr">
        <xs:attribute name="aria-labelledby" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.38 "aria-labelledby.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "aria-labelledby.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.38.

Table 4.3.38 XSD description for the "aria-labelledby.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="aria-labelledby.BaseSequenceXBase.Attr">
        <xs:attribute name="aria-labelledby" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.39 "aria-labelledby.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "aria-labelledby.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.39.

Table 4.3.39 XSD description for the "aria-labelledby.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-labelledby.BaseSequenceXBaseEmpty.Attr">
        <xs:attribute name="aria-labelledby" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.40 "aria-level.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "aria-level.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.40.

Table 4.3.40 XSD description for the "aria-level.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="aria-level.BasePromptInteraction.Attr">
        <xs:attribute name="aria-level" use="optional" type="ARIALevelInteger.Type" />
    </xs:attributeGroup>

### 4.3.41 "aria-level.BaseSequence.Attr" Attribute Group Description

The XSD description for the "aria-level.BaseSequence.Attr" Attribute Group is given in Table 4.3.41.

Table 4.3.41 XSD description for the "aria-level.BaseSequence.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequence.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type, caption/Table.Type, colgroup/Table.Type, gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type, gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type, infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type, inlineChoice/InlineChoiceInteraction.Type, li/OUL.Type, prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type, simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type, simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type, stimulusBody/AssessmentStimulus.Type, tbody/Table.Type, td/TR.Type, tfoot/Table.Type, th/TR.Type, thead/Table.Type, tr/TablePart.Type
Source |
    <xs:attributeGroup name="aria-level.BaseSequence.Attr">
        <xs:attribute name="aria-level" use="optional" type="ARIALevelInteger.Type" />
    </xs:attributeGroup>

### 4.3.42 "aria-level.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "aria-level.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.42.

Table 4.3.42 XSD description for the "aria-level.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-level.BaseSequenceFull.Attr">
        <xs:attribute name="aria-level" use="optional" type="ARIALevelInteger.Type" />
    </xs:attributeGroup>

### 4.3.43 "aria-level.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "aria-level.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.43.

Table 4.3.43 XSD description for the "aria-level.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="aria-level.BaseSequenceRIdent.Attr">
        <xs:attribute name="aria-level" use="optional" type="ARIALevelInteger.Type" />
    </xs:attributeGroup>

### 4.3.44 "aria-level.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "aria-level.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.44.

Table 4.3.44 XSD description for the "aria-level.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="aria-level.BaseSequenceXBase.Attr">
        <xs:attribute name="aria-level" use="optional" type="ARIALevelInteger.Type" />
    </xs:attributeGroup>

### 4.3.45 "aria-level.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "aria-level.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.45.

Table 4.3.45 XSD description for the "aria-level.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-level.BaseSequenceXBaseEmpty.Attr">
        <xs:attribute name="aria-level" use="optional" type="ARIALevelInteger.Type" />
    </xs:attributeGroup>

### 4.3.46 "aria-live.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "aria-live.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.46.

Table 4.3.46 XSD description for the "aria-live.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="aria-live.BasePromptInteraction.Attr">
        <xs:attribute name="aria-live" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="off" />
                    <xs:enumeration value="polite" />
                    <xs:enumeration value="assertive" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.47 "aria-live.BaseSequence.Attr" Attribute Group Description

The XSD description for the "aria-live.BaseSequence.Attr" Attribute Group is given in Table 4.3.47.

Table 4.3.47 XSD description for the "aria-live.BaseSequence.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequence.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type, caption/Table.Type, colgroup/Table.Type, gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type, gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type, infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type, inlineChoice/InlineChoiceInteraction.Type, li/OUL.Type, prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type, simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type, simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type, stimulusBody/AssessmentStimulus.Type, tbody/Table.Type, td/TR.Type, tfoot/Table.Type, th/TR.Type, thead/Table.Type, tr/TablePart.Type
Source |
    <xs:attributeGroup name="aria-live.BaseSequence.Attr">
        <xs:attribute name="aria-live" use="optional" default="off">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="off" />
                    <xs:enumeration value="polite" />
                    <xs:enumeration value="assertive" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.48 "aria-live.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "aria-live.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.48.

Table 4.3.48 XSD description for the "aria-live.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-live.BaseSequenceFull.Attr">
        <xs:attribute name="aria-live" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="off" />
                    <xs:enumeration value="polite" />
                    <xs:enumeration value="assertive" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.49 "aria-live.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "aria-live.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.49.

Table 4.3.49 XSD description for the "aria-live.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="aria-live.BaseSequenceRIdent.Attr">
        <xs:attribute name="aria-live" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="off" />
                    <xs:enumeration value="polite" />
                    <xs:enumeration value="assertive" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.50 "aria-live.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "aria-live.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.50.

Table 4.3.50 XSD description for the "aria-live.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="aria-live.BaseSequenceXBase.Attr">
        <xs:attribute name="aria-live" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="off" />
                    <xs:enumeration value="polite" />
                    <xs:enumeration value="assertive" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.51 "aria-live.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "aria-live.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.51.

Table 4.3.51 XSD description for the "aria-live.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-live.BaseSequenceXBaseEmpty.Attr">
        <xs:attribute name="aria-live" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="off" />
                    <xs:enumeration value="polite" />
                    <xs:enumeration value="assertive" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.52 "aria-orientation.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "aria-orientation.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.52.

Table 4.3.52 XSD description for the "aria-orientation.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="aria-orientation.BasePromptInteraction.Attr">
        <xs:attribute name="aria-orientation" use="optional" default="horizontal">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="vertical" />
                    <xs:enumeration value="horizontal" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.53 "aria-orientation.BaseSequence.Attr" Attribute Group Description

The XSD description for the "aria-orientation.BaseSequence.Attr" Attribute Group is given in Table 4.3.53.

Table 4.3.53 XSD description for the "aria-orientation.BaseSequence.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequence.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type, caption/Table.Type, colgroup/Table.Type, gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type, gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type, infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type, inlineChoice/InlineChoiceInteraction.Type, li/OUL.Type, prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type, simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type, simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type, stimulusBody/AssessmentStimulus.Type, tbody/Table.Type, td/TR.Type, tfoot/Table.Type, th/TR.Type, thead/Table.Type, tr/TablePart.Type
Source |
    <xs:attributeGroup name="aria-orientation.BaseSequence.Attr">
        <xs:attribute name="aria-orientation" use="optional" default="horizontal">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="vertical" />
                    <xs:enumeration value="horizontal" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.54 "aria-orientation.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "aria-orientation.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.54.

Table 4.3.54 XSD description for the "aria-orientation.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-orientation.BaseSequenceFull.Attr">
        <xs:attribute name="aria-orientation" use="optional" default="horizontal">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="vertical" />
                    <xs:enumeration value="horizontal" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.55 "aria-orientation.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "aria-orientation.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.55.

Table 4.3.55 XSD description for the "aria-orientation.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="aria-orientation.BaseSequenceRIdent.Attr">
        <xs:attribute name="aria-orientation" use="optional" default="horizontal">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="vertical" />
                    <xs:enumeration value="horizontal" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.56 "aria-orientation.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "aria-orientation.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.56.

Table 4.3.56 XSD description for the "aria-orientation.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="aria-orientation.BaseSequenceXBase.Attr">
        <xs:attribute name="aria-orientation" use="optional" default="horizontal">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="vertical" />
                    <xs:enumeration value="horizontal" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.57 "aria-orientation.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "aria-orientation.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.57.

Table 4.3.57 XSD description for the "aria-orientation.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-orientation.BaseSequenceXBaseEmpty.Attr">
        <xs:attribute name="aria-orientation" use="optional" default="horizontal">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="vertical" />
                    <xs:enumeration value="horizontal" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.58 "aria-owns.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "aria-owns.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.58.

Table 4.3.58 XSD description for the "aria-owns.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="aria-owns.BasePromptInteraction.Attr">
        <xs:attribute name="aria-owns" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.59 "aria-owns.BaseSequence.Attr" Attribute Group Description

The XSD description for the "aria-owns.BaseSequence.Attr" Attribute Group is given in Table 4.3.59.

Table 4.3.59 XSD description for the "aria-owns.BaseSequence.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequence.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type, caption/Table.Type, colgroup/Table.Type, gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type, gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type, infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type, inlineChoice/InlineChoiceInteraction.Type, li/OUL.Type, prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type, simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type, simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type, stimulusBody/AssessmentStimulus.Type, tbody/Table.Type, td/TR.Type, tfoot/Table.Type, th/TR.Type, thead/Table.Type, tr/TablePart.Type
Source |
    <xs:attributeGroup name="aria-owns.BaseSequence.Attr">
        <xs:attribute name="aria-owns" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.60 "aria-owns.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "aria-owns.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.60.

Table 4.3.60 XSD description for the "aria-owns.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-owns.BaseSequenceFull.Attr">
        <xs:attribute name="aria-owns" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.61 "aria-owns.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "aria-owns.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.61.

Table 4.3.61 XSD description for the "aria-owns.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="aria-owns.BaseSequenceRIdent.Attr">
        <xs:attribute name="aria-owns" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.62 "aria-owns.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "aria-owns.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.62.

Table 4.3.62 XSD description for the "aria-owns.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="aria-owns.BaseSequenceXBase.Attr">
        <xs:attribute name="aria-owns" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.63 "aria-owns.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "aria-owns.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.63.

Table 4.3.63 XSD description for the "aria-owns.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="aria-owns.BaseSequenceXBaseEmpty.Attr">
        <xs:attribute name="aria-owns" use="optional" type="xs:IDREFS" />
    </xs:attributeGroup>

### 4.3.64 "autostart.MediaInteraction.Attr" Attribute Group Description

The XSD description for the "autostart.MediaInteraction.Attr" Attribute Group is given in Table 4.3.64.

Table 4.3.64 XSD description for the "autostart.MediaInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MediaInteraction.Type
Elements | mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type
Source |
    <xs:attributeGroup name="autostart.MediaInteraction.Attr">
        <xs:attribute name="autostart" use="required" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.65 "axis.TDH.Attr" Attribute Group Description

The XSD description for the "axis.TDH.Attr" Attribute Group is given in Table 4.3.65.

Table 4.3.65 XSD description for the "axis.TDH.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TDH.Type
Elements | td/TR.Type, th/TR.Type
Source |
    <xs:attributeGroup name="axis.TDH.Attr">
        <xs:attribute name="axis" use="optional" type="xs:string" />
    </xs:attributeGroup>

### 4.3.66 "base.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "base.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.66.

Table 4.3.66 XSD description for the "base.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="base.BasePromptInteraction.Attr">
        <xs:attribute ref="xml:base" use="optional" />
    </xs:attributeGroup>

### 4.3.67 "base.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "base.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.67.

Table 4.3.67 XSD description for the "base.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="base.BaseSequenceFull.Attr">
        <xs:attribute ref="xml:base" use="optional" />
    </xs:attributeGroup>

### 4.3.68 "base.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "base.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.68.

Table 4.3.68 XSD description for the "base.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="base.BaseSequenceXBase.Attr">
        <xs:attribute ref="xml:base" use="optional" />
    </xs:attributeGroup>

### 4.3.69 "base.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "base.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.69.

Table 4.3.69 XSD description for the "base.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="base.BaseSequenceXBaseEmpty.Attr">
        <xs:attribute ref="xml:base" use="optional" />
    </xs:attributeGroup>

### 4.3.70 "base.ExtendedTextInteraction.Attr" Attribute Group Description

The XSD description for the "base.ExtendedTextInteraction.Attr" Attribute Group is given in Table 4.3.70.

Table 4.3.70 XSD description for the "base.ExtendedTextInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ExtendedTextInteraction.Type
Elements | extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type
Source |
    <xs:attributeGroup name="base.ExtendedTextInteraction.Attr">
        <xs:attribute name="base" use="optional" default="10" type="xs:int" />
    </xs:attributeGroup>

### 4.3.71 "base.PrintedVariable.Attr" Attribute Group Description

The XSD description for the "base.PrintedVariable.Attr" Attribute Group is given in Table 4.3.71.

Table 4.3.71 XSD description for the "base.PrintedVariable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PrintedVariable.Type
Elements | printedVariable/TemplateBlock.Type, printedVariable/TemplateBlockFeedbackBlock.Type, printedVariable/FeedbackBlock.Type, printedVariable/ModalFeedback.Type, printedVariable/TestFeedback.Type, printedVariable/FeedbackInline.Type, printedVariable/DD.Type, printedVariable/Div.Type, printedVariable/LI.Type, printedVariable/TDH.Type, printedVariable/InfoControl.Type, printedVariable/SimpleAssociableChoice.Type, printedVariable/SimpleChoice.Type, printedVariable/GapText.Type, printedVariable/HotText.Type, printedVariable/InlineChoice.Type, printedVariable/Label.Type, printedVariable/A.Type, printedVariable/Caption.Type, printedVariable/DT.Type, printedVariable/HTMLText.Type, printedVariable/Q.Type, printedVariable/TemplateInline.Type, printedVariable/RubricBlock.Type, printedVariable/RubricBlockTemplateBlock.Type, printedVariable/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="base.PrintedVariable.Attr">
        <xs:attribute name="base" use="optional" default="10">
            <xs:simpleType>
                <xs:union>
                    <xs:simpleType>
                        <xs:restriction base="xs:integer" />
                    </xs:simpleType>
                    <xs:simpleType>
                        <xs:restriction base="VariableString.Type" />
                    </xs:simpleType>
                </xs:union>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.72 "base.TextEntryInteraction.Attr" Attribute Group Description

The XSD description for the "base.TextEntryInteraction.Attr" Attribute Group is given in Table 4.3.72.

Table 4.3.72 XSD description for the "base.TextEntryInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TextEntryInteraction.Type
Elements | textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="base.TextEntryInteraction.Attr">
        <xs:attribute name="base" use="optional" default="10" type="xs:int" />
    </xs:attributeGroup>

### 4.3.73 "baseType.BaseValue.Attr" Attribute Group Description

The XSD description for the "baseType.BaseValue.Attr" Attribute Group is given in Table 4.3.73.

Table 4.3.73 XSD description for the "baseType.BaseValue.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseValue.Type
Elements | baseValue/AnyN.Type, baseValue/BranchRule.Type, baseValue/CustomOperator.Type, baseValue/Equal.Type, baseValue/EqualRounded.Type, baseValue/FieldValue.Type, baseValue/Index.Type, baseValue/Inside.Type, baseValue/Logic0toMany.Type, baseValue/Logic1toMany.Type, baseValue/LogicPair.Type, baseValue/LogicSingle.Type, baseValue/LookupOutcomeValue.Type, baseValue/MathOperator.Type, baseValue/OutcomeIf.Type, baseValue/PatternMatch.Type, baseValue/Repeat.Type, baseValue/ResponseIf.Type, baseValue/RoundTo.Type, baseValue/SetValue.Type, baseValue/StatsOperator.Type, baseValue/StringMatch.Type, baseValue/Substring.Type, baseValue/TemplateConstraint.Type, baseValue/TemplateDefault.Type, baseValue/TemplateIf.Type, baseValue/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="baseType.BaseValue.Attr">
        <xs:attribute name="baseType" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="boolean" />
                    <xs:enumeration value="directedPair" />
                    <xs:enumeration value="duration" />
                    <xs:enumeration value="file" />
                    <xs:enumeration value="float" />
                    <xs:enumeration value="identifier" />
                    <xs:enumeration value="integer" />
                    <xs:enumeration value="pair" />
                    <xs:enumeration value="point" />
                    <xs:enumeration value="string" />
                    <xs:enumeration value="uri" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.74 "baseType.OutcomeDeclaration.Attr" Attribute Group Description

The XSD description for the "baseType.OutcomeDeclaration.Attr" Attribute Group is given in Table 4.3.74.

Table 4.3.74 XSD description for the "baseType.OutcomeDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | outcomeDeclaration
ComplexTypes | OutcomeDeclaration.Type
Source |
    <xs:attributeGroup name="baseType.OutcomeDeclaration.Attr">
        <xs:attribute name="baseType" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="boolean" />
                    <xs:enumeration value="directedPair" />
                    <xs:enumeration value="duration" />
                    <xs:enumeration value="file" />
                    <xs:enumeration value="float" />
                    <xs:enumeration value="identifier" />
                    <xs:enumeration value="integer" />
                    <xs:enumeration value="pair" />
                    <xs:enumeration value="point" />
                    <xs:enumeration value="string" />
                    <xs:enumeration value="uri" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.75 "baseType.ResponseDeclaration.Attr" Attribute Group Description

The XSD description for the "baseType.ResponseDeclaration.Attr" Attribute Group is given in Table 4.3.75.

Table 4.3.75 XSD description for the "baseType.ResponseDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ResponseDeclaration.Type
Elements | responseDeclaration/AssessmentItem.Type
Source |
    <xs:attributeGroup name="baseType.ResponseDeclaration.Attr">
        <xs:attribute name="baseType" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="boolean" />
                    <xs:enumeration value="directedPair" />
                    <xs:enumeration value="duration" />
                    <xs:enumeration value="file" />
                    <xs:enumeration value="float" />
                    <xs:enumeration value="identifier" />
                    <xs:enumeration value="integer" />
                    <xs:enumeration value="pair" />
                    <xs:enumeration value="point" />
                    <xs:enumeration value="string" />
                    <xs:enumeration value="uri" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.76 "baseType.TemplateDeclaration.Attr" Attribute Group Description

The XSD description for the "baseType.TemplateDeclaration.Attr" Attribute Group is given in Table 4.3.76.

Table 4.3.76 XSD description for the "baseType.TemplateDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TemplateDeclaration.Type
Elements | templateDeclaration/AssessmentItem.Type
Source |
    <xs:attributeGroup name="baseType.TemplateDeclaration.Attr">
        <xs:attribute name="baseType" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="boolean" />
                    <xs:enumeration value="directedPair" />
                    <xs:enumeration value="duration" />
                    <xs:enumeration value="file" />
                    <xs:enumeration value="float" />
                    <xs:enumeration value="identifier" />
                    <xs:enumeration value="integer" />
                    <xs:enumeration value="pair" />
                    <xs:enumeration value="point" />
                    <xs:enumeration value="string" />
                    <xs:enumeration value="uri" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.77 "baseType.TestVariables.Attr" Attribute Group Description

The XSD description for the "baseType.TestVariables.Attr" Attribute Group is given in Table 4.3.77.

Table 4.3.77 XSD description for the "baseType.TestVariables.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TestVariables.Type
Elements | testVariables/AnyN.Type, testVariables/BranchRule.Type, testVariables/CustomOperator.Type, testVariables/Equal.Type, testVariables/EqualRounded.Type, testVariables/FieldValue.Type, testVariables/Index.Type, testVariables/Inside.Type, testVariables/Logic0toMany.Type, testVariables/Logic1toMany.Type, testVariables/LogicPair.Type, testVariables/LogicSingle.Type, testVariables/LookupOutcomeValue.Type, testVariables/MathOperator.Type, testVariables/OutcomeIf.Type, testVariables/PatternMatch.Type, testVariables/Repeat.Type, testVariables/ResponseIf.Type, testVariables/RoundTo.Type, testVariables/SetValue.Type, testVariables/StatsOperator.Type, testVariables/StringMatch.Type, testVariables/Substring.Type, testVariables/TemplateConstraint.Type, testVariables/TemplateDefault.Type, testVariables/TemplateIf.Type, testVariables/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="baseType.TestVariables.Attr">
        <xs:attribute name="baseType" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="boolean" />
                    <xs:enumeration value="directedPair" />
                    <xs:enumeration value="duration" />
                    <xs:enumeration value="file" />
                    <xs:enumeration value="float" />
                    <xs:enumeration value="identifier" />
                    <xs:enumeration value="integer" />
                    <xs:enumeration value="pair" />
                    <xs:enumeration value="point" />
                    <xs:enumeration value="string" />
                    <xs:enumeration value="uri" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.78 "baseType.Value.Attr" Attribute Group Description

The XSD description for the "baseType.Value.Attr" Attribute Group is given in Table 4.3.78.

Table 4.3.78 XSD description for the "baseType.Value.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Value.Type
Elements | value/CorrectResponse.Type, value/DefaultValue.Type
Source |
    <xs:attributeGroup name="baseType.Value.Attr">
        <xs:attribute name="baseType" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="boolean" />
                    <xs:enumeration value="directedPair" />
                    <xs:enumeration value="duration" />
                    <xs:enumeration value="file" />
                    <xs:enumeration value="float" />
                    <xs:enumeration value="identifier" />
                    <xs:enumeration value="integer" />
                    <xs:enumeration value="pair" />
                    <xs:enumeration value="point" />
                    <xs:enumeration value="string" />
                    <xs:enumeration value="uri" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.79 "baseuri.PrintedVariable.Attr" Attribute Group Description

The XSD description for the "baseuri.PrintedVariable.Attr" Attribute Group is given in Table 4.3.79.

Table 4.3.79 XSD description for the "baseuri.PrintedVariable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PrintedVariable.Type
Elements | printedVariable/TemplateBlock.Type, printedVariable/TemplateBlockFeedbackBlock.Type, printedVariable/FeedbackBlock.Type, printedVariable/ModalFeedback.Type, printedVariable/TestFeedback.Type, printedVariable/FeedbackInline.Type, printedVariable/DD.Type, printedVariable/Div.Type, printedVariable/LI.Type, printedVariable/TDH.Type, printedVariable/InfoControl.Type, printedVariable/SimpleAssociableChoice.Type, printedVariable/SimpleChoice.Type, printedVariable/GapText.Type, printedVariable/HotText.Type, printedVariable/InlineChoice.Type, printedVariable/Label.Type, printedVariable/A.Type, printedVariable/Caption.Type, printedVariable/DT.Type, printedVariable/HTMLText.Type, printedVariable/Q.Type, printedVariable/TemplateInline.Type, printedVariable/RubricBlock.Type, printedVariable/RubricBlockTemplateBlock.Type, printedVariable/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="baseuri.PrintedVariable.Attr">
        <xs:attribute ref="xml:base" use="optional" />
    </xs:attributeGroup>

### 4.3.80 "cardinality.OutcomeDeclaration.Attr" Attribute Group Description

The XSD description for the "cardinality.OutcomeDeclaration.Attr" Attribute Group is given in Table 4.3.80.

Table 4.3.80 XSD description for the "cardinality.OutcomeDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | outcomeDeclaration
ComplexTypes | OutcomeDeclaration.Type
Source |
    <xs:attributeGroup name="cardinality.OutcomeDeclaration.Attr">
        <xs:attribute name="cardinality" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="multiple" />
                    <xs:enumeration value="ordered" />
                    <xs:enumeration value="record" />
                    <xs:enumeration value="single" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.81 "cardinality.ResponseDeclaration.Attr" Attribute Group Description

The XSD description for the "cardinality.ResponseDeclaration.Attr" Attribute Group is given in Table 4.3.81.

Table 4.3.81 XSD description for the "cardinality.ResponseDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ResponseDeclaration.Type
Elements | responseDeclaration/AssessmentItem.Type
Source |
    <xs:attributeGroup name="cardinality.ResponseDeclaration.Attr">
        <xs:attribute name="cardinality" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="multiple" />
                    <xs:enumeration value="ordered" />
                    <xs:enumeration value="record" />
                    <xs:enumeration value="single" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.82 "cardinality.TemplateDeclaration.Attr" Attribute Group Description

The XSD description for the "cardinality.TemplateDeclaration.Attr" Attribute Group is given in Table 4.3.82.

Table 4.3.82 XSD description for the "cardinality.TemplateDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TemplateDeclaration.Type
Elements | templateDeclaration/AssessmentItem.Type
Source |
    <xs:attributeGroup name="cardinality.TemplateDeclaration.Attr">
        <xs:attribute name="cardinality" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="multiple" />
                    <xs:enumeration value="ordered" />
                    <xs:enumeration value="record" />
                    <xs:enumeration value="single" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.83 "caseSensitive.MapEntry.Attr" Attribute Group Description

The XSD description for the "caseSensitive.MapEntry.Attr" Attribute Group is given in Table 4.3.83.

Table 4.3.83 XSD description for the "caseSensitive.MapEntry.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MapEntry.Type
Elements | mapEntry/Mapping.Type
Source |
    <xs:attributeGroup name="caseSensitive.MapEntry.Attr">
        <xs:attribute name="caseSensitive" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.84 "caseSensitive.StringMatch.Attr" Attribute Group Description

The XSD description for the "caseSensitive.StringMatch.Attr" Attribute Group is given in Table 4.3.84.

Table 4.3.84 XSD description for the "caseSensitive.StringMatch.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | StringMatch.Type
Elements | stringMatch/AnyN.Type, stringMatch/BranchRule.Type, stringMatch/CustomOperator.Type, stringMatch/Equal.Type, stringMatch/EqualRounded.Type, stringMatch/FieldValue.Type, stringMatch/Index.Type, stringMatch/Inside.Type, stringMatch/Logic0toMany.Type, stringMatch/Logic1toMany.Type, stringMatch/LogicPair.Type, stringMatch/LogicSingle.Type, stringMatch/LookupOutcomeValue.Type, stringMatch/MathOperator.Type, stringMatch/OutcomeIf.Type, stringMatch/PatternMatch.Type, stringMatch/Repeat.Type, stringMatch/ResponseIf.Type, stringMatch/RoundTo.Type, stringMatch/SetValue.Type, stringMatch/StatsOperator.Type, stringMatch/StringMatch.Type, stringMatch/Substring.Type, stringMatch/TemplateConstraint.Type, stringMatch/TemplateDefault.Type, stringMatch/TemplateIf.Type
Source |
    <xs:attributeGroup name="caseSensitive.StringMatch.Attr">
        <xs:attribute name="caseSensitive" use="required" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.85 "caseSensitive.Substring.Attr" Attribute Group Description

The XSD description for the "caseSensitive.Substring.Attr" Attribute Group is given in Table 4.3.85.

Table 4.3.85 XSD description for the "caseSensitive.Substring.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Substring.Type
Elements | substring/AnyN.Type, substring/BranchRule.Type, substring/CustomOperator.Type, substring/Equal.Type, substring/EqualRounded.Type, substring/FieldValue.Type, substring/Index.Type, substring/Inside.Type, substring/Logic0toMany.Type, substring/Logic1toMany.Type, substring/LogicPair.Type, substring/LogicSingle.Type, substring/LookupOutcomeValue.Type, substring/MathOperator.Type, substring/OutcomeIf.Type, substring/PatternMatch.Type, substring/Repeat.Type, substring/ResponseIf.Type, substring/RoundTo.Type, substring/SetValue.Type, substring/StatsOperator.Type, substring/StringMatch.Type, substring/Substring.Type, substring/TemplateConstraint.Type, substring/TemplateDefault.Type, substring/TemplateIf.Type
Source |
    <xs:attributeGroup name="caseSensitive.Substring.Attr">
        <xs:attribute name="caseSensitive" use="required" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.86 "category.AssessmentItemRef.Attr" Attribute Group Description

The XSD description for the "category.AssessmentItemRef.Attr" Attribute Group is given in Table 4.3.86.

Table 4.3.86 XSD description for the "category.AssessmentItemRef.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssessmentItemRef.Type
Elements | assessmentItemRef/AssessmentSection.Type
Source |
    <xs:attributeGroup name="category.AssessmentItemRef.Attr">
        <xs:attribute name="category" use="optional">
            <xs:simpleType>
                <xs:list itemType="IdentifierList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.87 "centerPoint.PositionObjectInteraction.Attr" Attribute Group Description

The XSD description for the "centerPoint.PositionObjectInteraction.Attr" Attribute Group is given in Table 4.3.87.

Table 4.3.87 XSD description for the "centerPoint.PositionObjectInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PositionObjectInteraction.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="centerPoint.PositionObjectInteraction.Attr">
        <xs:attribute name="centerPoint" use="optional">
            <xs:simpleType>
                <xs:list itemType="IntegerList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.88 "cite.BlockQuote.Attr" Attribute Group Description

The XSD description for the "cite.BlockQuote.Attr" Attribute Group is given in Table 4.3.88.

Table 4.3.88 XSD description for the "cite.BlockQuote.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BlockQuote.Type
Elements | blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type
Source |
    <xs:attributeGroup name="cite.BlockQuote.Attr">
        <xs:attribute name="cite" use="optional" type="xs:anyURI" />
    </xs:attributeGroup>

### 4.3.89 "cite.Q.Attr" Attribute Group Description

The XSD description for the "cite.Q.Attr" Attribute Group is given in Table 4.3.89.

Table 4.3.89 XSD description for the "cite.Q.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Q.Type
Elements | q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="cite.Q.Attr">
        <xs:attribute name="cite" use="optional" type="xs:anyURI" />
    </xs:attributeGroup>

### 4.3.90 "class.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "class.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.90.

Table 4.3.90 XSD description for the "class.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="class.BasePromptInteraction.Attr">
        <xs:attribute name="class" use="optional">
            <xs:simpleType>
                <xs:list itemType="StringList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.91 "class.BaseSequence.Attr" Attribute Group Description

The XSD description for the "class.BaseSequence.Attr" Attribute Group is given in Table 4.3.91.

Table 4.3.91 XSD description for the "class.BaseSequence.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequence.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type, caption/Table.Type, colgroup/Table.Type, gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type, gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type, infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type, inlineChoice/InlineChoiceInteraction.Type, li/OUL.Type, prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type, simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type, simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type, stimulusBody/AssessmentStimulus.Type, tbody/Table.Type, td/TR.Type, tfoot/Table.Type, th/TR.Type, thead/Table.Type, tr/TablePart.Type
Source |
    <xs:attributeGroup name="class.BaseSequence.Attr">
        <xs:attribute name="class" use="optional">
            <xs:simpleType>
                <xs:list itemType="StringList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.92 "class.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "class.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.92.

Table 4.3.92 XSD description for the "class.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="class.BaseSequenceFull.Attr">
        <xs:attribute name="class" use="optional">
            <xs:simpleType>
                <xs:list itemType="StringList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.93 "class.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "class.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.93.

Table 4.3.93 XSD description for the "class.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="class.BaseSequenceRIdent.Attr">
        <xs:attribute name="class" use="optional">
            <xs:simpleType>
                <xs:list itemType="StringList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.94 "class.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "class.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.94.

Table 4.3.94 XSD description for the "class.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="class.BaseSequenceXBase.Attr">
        <xs:attribute name="class" use="optional">
            <xs:simpleType>
                <xs:list itemType="StringList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.95 "class.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "class.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.95.

Table 4.3.95 XSD description for the "class.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="class.BaseSequenceXBaseEmpty.Attr">
        <xs:attribute name="class" use="optional">
            <xs:simpleType>
                <xs:list itemType="StringList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.96 "class.CustomOperator.Attr" Attribute Group Description

The XSD description for the "class.CustomOperator.Attr" Attribute Group is given in Table 4.3.96.

Table 4.3.96 XSD description for the "class.CustomOperator.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | CustomOperator.Type
Elements | customOperator/AnyN.Type, customOperator/BranchRule.Type, customOperator/CustomOperator.Type, customOperator/Equal.Type, customOperator/EqualRounded.Type, customOperator/FieldValue.Type, customOperator/Index.Type, customOperator/Inside.Type, customOperator/Logic0toMany.Type, customOperator/Logic1toMany.Type, customOperator/LogicPair.Type, customOperator/LogicSingle.Type, customOperator/LookupOutcomeValue.Type, customOperator/MathOperator.Type, customOperator/OutcomeIf.Type, customOperator/PatternMatch.Type, customOperator/Repeat.Type, customOperator/ResponseIf.Type, customOperator/RoundTo.Type, customOperator/SetValue.Type, customOperator/StatsOperator.Type, customOperator/StringMatch.Type, customOperator/Substring.Type, customOperator/TemplateConstraint.Type, customOperator/TemplateDefault.Type, customOperator/TemplateIf.Type, customOperator/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="class.CustomOperator.Attr">
        <xs:attribute name="class" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.97 "class.ItemBody.Attr" Attribute Group Description

The XSD description for the "class.ItemBody.Attr" Attribute Group is given in Table 4.3.97.

Table 4.3.97 XSD description for the "class.ItemBody.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ItemBody.Type
Elements | itemBody/AssessmentItem.Type
Source |
    <xs:attributeGroup name="class.ItemBody.Attr">
        <xs:attribute name="class" use="optional">
            <xs:simpleType>
                <xs:list itemType="StringList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.98 "class.PrintedVariable.Attr" Attribute Group Description

The XSD description for the "class.PrintedVariable.Attr" Attribute Group is given in Table 4.3.98.

Table 4.3.98 XSD description for the "class.PrintedVariable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PrintedVariable.Type
Elements | printedVariable/TemplateBlock.Type, printedVariable/TemplateBlockFeedbackBlock.Type, printedVariable/FeedbackBlock.Type, printedVariable/ModalFeedback.Type, printedVariable/TestFeedback.Type, printedVariable/FeedbackInline.Type, printedVariable/DD.Type, printedVariable/Div.Type, printedVariable/LI.Type, printedVariable/TDH.Type, printedVariable/InfoControl.Type, printedVariable/SimpleAssociableChoice.Type, printedVariable/SimpleChoice.Type, printedVariable/GapText.Type, printedVariable/HotText.Type, printedVariable/InlineChoice.Type, printedVariable/Label.Type, printedVariable/A.Type, printedVariable/Caption.Type, printedVariable/DT.Type, printedVariable/HTMLText.Type, printedVariable/Q.Type, printedVariable/TemplateInline.Type, printedVariable/RubricBlock.Type, printedVariable/RubricBlockTemplateBlock.Type, printedVariable/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="class.PrintedVariable.Attr">
        <xs:attribute name="class" use="optional">
            <xs:simpleType>
                <xs:list itemType="StringList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.99 "colspan.TDH.Attr" Attribute Group Description

The XSD description for the "colspan.TDH.Attr" Attribute Group is given in Table 4.3.99.

Table 4.3.99 XSD description for the "colspan.TDH.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TDH.Type
Elements | td/TR.Type, th/TR.Type
Source |
    <xs:attributeGroup name="colspan.TDH.Attr">
        <xs:attribute name="colspan" use="optional" type="xs:int" />
    </xs:attributeGroup>

### 4.3.100 "coords.AreaMapEntry.Attr" Attribute Group Description

The XSD description for the "coords.AreaMapEntry.Attr" Attribute Group is given in Table 4.3.100.

Table 4.3.100 XSD description for the "coords.AreaMapEntry.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AreaMapEntry.Type
Elements | areaMapEntry/AreaMapping.Type
Source |
    <xs:attributeGroup name="coords.AreaMapEntry.Attr">
        <xs:attribute name="coords" use="required" type="Coords.Type" />
    </xs:attributeGroup>

### 4.3.101 "coords.AssociableHotspot.Attr" Attribute Group Description

The XSD description for the "coords.AssociableHotspot.Attr" Attribute Group is given in Table 4.3.101.

Table 4.3.101 XSD description for the "coords.AssociableHotspot.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssociableHotspot.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="coords.AssociableHotspot.Attr">
        <xs:attribute name="coords" use="required" type="Coords.Type" />
    </xs:attributeGroup>

### 4.3.102 "coords.HotspotChoice.Attr" Attribute Group Description

The XSD description for the "coords.HotspotChoice.Attr" Attribute Group is given in Table 4.3.102.

Table 4.3.102 XSD description for the "coords.HotspotChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | HotspotChoice.Type
Elements | hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type
Source |
    <xs:attributeGroup name="coords.HotspotChoice.Attr">
        <xs:attribute name="coords" use="required" type="Coords.Type" />
    </xs:attributeGroup>

### 4.3.103 "coords.Inside.Attr" Attribute Group Description

The XSD description for the "coords.Inside.Attr" Attribute Group is given in Table 4.3.103.

Table 4.3.103 XSD description for the "coords.Inside.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Inside.Type
Elements | inside/AnyN.Type, inside/BranchRule.Type, inside/CustomOperator.Type, inside/Equal.Type, inside/EqualRounded.Type, inside/FieldValue.Type, inside/Index.Type, inside/Inside.Type, inside/Logic0toMany.Type, inside/Logic1toMany.Type, inside/LogicPair.Type, inside/LogicSingle.Type, inside/LookupOutcomeValue.Type, inside/MathOperator.Type, inside/OutcomeIf.Type, inside/PatternMatch.Type, inside/Repeat.Type, inside/ResponseIf.Type, inside/RoundTo.Type, inside/SetValue.Type, inside/StatsOperator.Type, inside/StringMatch.Type, inside/Substring.Type, inside/TemplateConstraint.Type, inside/TemplateDefault.Type, inside/TemplateIf.Type
Source |
    <xs:attributeGroup name="coords.Inside.Attr">
        <xs:attribute name="coords" use="required" type="Coords.Type" />
    </xs:attributeGroup>

### 4.3.104 "coords.MediaInteraction.Attr" Attribute Group Description

The XSD description for the "coords.MediaInteraction.Attr" Attribute Group is given in Table 4.3.104.

Table 4.3.104 XSD description for the "coords.MediaInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MediaInteraction.Type
Elements | mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type
Source |
    <xs:attributeGroup name="coords.MediaInteraction.Attr">
        <xs:attribute name="coords" use="optional" type="Coords.Type" />
    </xs:attributeGroup>

### 4.3.105 "countAttempt.EndAttemptInteraction.Attr" Attribute Group Description

The XSD description for the "countAttempt.EndAttemptInteraction.Attr" Attribute Group is given in Table 4.3.105.

Table 4.3.105 XSD description for the "countAttempt.EndAttemptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | EndAttemptInteraction.Type
Elements | endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type
Source |
    <xs:attributeGroup name="countAttempt.EndAttemptInteraction.Attr">
        <xs:attribute name="countAttempt" use="optional" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.106 "data.Object.Attr" Attribute Group Description

The XSD description for the "data.Object.Attr" Attribute Group is given in Table 4.3.106.

Table 4.3.106 XSD description for the "data.Object.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Object.Type
Elements | object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type
Source |
    <xs:attributeGroup name="data.Object.Attr">
        <xs:attribute name="data" use="required" type="xs:string" />
    </xs:attributeGroup>

### 4.3.107 "dataExtension.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "dataExtension.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.107.

Table 4.3.107 XSD description for the "dataExtension.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:attributeGroup name="dataExtension.BasePromptInteraction.Attr">
        <xs:anyAttribute namespace = "##any" processContents = "lax" />
    </xs:attributeGroup>

### 4.3.108 "dataExtension.BaseSequence.Attr" Attribute Group Description

The XSD description for the "dataExtension.BaseSequence.Attr" Attribute Group is given in Table 4.3.108.

Table 4.3.108 XSD description for the "dataExtension.BaseSequence.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequence.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type, caption/Table.Type, colgroup/Table.Type, gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type, gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type, infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type, inlineChoice/InlineChoiceInteraction.Type, li/OUL.Type, prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type, simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type, simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type, stimulusBody/AssessmentStimulus.Type, tbody/Table.Type, td/TR.Type, tfoot/Table.Type, th/TR.Type, thead/Table.Type, tr/TablePart.Type
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:attributeGroup name="dataExtension.BaseSequence.Attr">
        <xs:anyAttribute namespace = "##any" processContents = "lax" />
    </xs:attributeGroup>

### 4.3.109 "dataExtension.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "dataExtension.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.109.

Table 4.3.109 XSD description for the "dataExtension.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:attributeGroup name="dataExtension.BaseSequenceFull.Attr">
        <xs:anyAttribute namespace = "##any" processContents = "lax" />
    </xs:attributeGroup>

### 4.3.110 "dataExtension.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "dataExtension.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.110.

Table 4.3.110 XSD description for the "dataExtension.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:attributeGroup name="dataExtension.BaseSequenceRIdent.Attr">
        <xs:anyAttribute namespace = "##any" processContents = "lax" />
    </xs:attributeGroup>

### 4.3.111 "dataExtension.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "dataExtension.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.111.

Table 4.3.111 XSD description for the "dataExtension.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:attributeGroup name="dataExtension.BaseSequenceXBase.Attr">
        <xs:anyAttribute namespace = "##any" processContents = "lax" />
    </xs:attributeGroup>

### 4.3.112 "dataExtension.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "dataExtension.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.112.

Table 4.3.112 XSD description for the "dataExtension.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:attributeGroup name="dataExtension.BaseSequenceXBaseEmpty.Attr">
        <xs:anyAttribute namespace = "##any" processContents = "lax" />
    </xs:attributeGroup>

### 4.3.113 "defaultValue.AreaMapping.Attr" Attribute Group Description

The XSD description for the "defaultValue.AreaMapping.Attr" Attribute Group is given in Table 4.3.113.

Table 4.3.113 XSD description for the "defaultValue.AreaMapping.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AreaMapping.Type
Elements | areaMapping/ResponseDeclaration.Type
Source |
    <xs:attributeGroup name="defaultValue.AreaMapping.Attr">
        <xs:attribute name="defaultValue" use="optional" default="0" type="xs:double" />
    </xs:attributeGroup>

### 4.3.114 "defaultValue.InterpolationTable.Attr" Attribute Group Description

The XSD description for the "defaultValue.InterpolationTable.Attr" Attribute Group is given in Table 4.3.114.

Table 4.3.114 XSD description for the "defaultValue.InterpolationTable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | InterpolationTable.Type
Elements | interpolationTable/OutcomeDeclaration.Type
Source |
    <xs:attributeGroup name="defaultValue.InterpolationTable.Attr">
        <xs:attribute name="defaultValue" use="optional" type="xs:string" />
    </xs:attributeGroup>

### 4.3.115 "defaultValue.Mapping.Attr" Attribute Group Description

The XSD description for the "defaultValue.Mapping.Attr" Attribute Group is given in Table 4.3.115.

Table 4.3.115 XSD description for the "defaultValue.Mapping.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Mapping.Type
Elements | mapping/ResponseDeclaration.Type
Source |
    <xs:attributeGroup name="defaultValue.Mapping.Attr">
        <xs:attribute name="defaultValue" use="optional" default="0" type="xs:double" />
    </xs:attributeGroup>

### 4.3.116 "defaultValue.MatchTable.Attr" Attribute Group Description

The XSD description for the "defaultValue.MatchTable.Attr" Attribute Group is given in Table 4.3.116.

Table 4.3.116 XSD description for the "defaultValue.MatchTable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MatchTable.Type
Elements | matchTable/OutcomeDeclaration.Type
Source |
    <xs:attributeGroup name="defaultValue.MatchTable.Attr">
        <xs:attribute name="defaultValue" use="optional" type="xs:string" />
    </xs:attributeGroup>

### 4.3.117 "definition.CustomOperator.Attr" Attribute Group Description

The XSD description for the "definition.CustomOperator.Attr" Attribute Group is given in Table 4.3.117.

Table 4.3.117 XSD description for the "definition.CustomOperator.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | CustomOperator.Type
Elements | customOperator/AnyN.Type, customOperator/BranchRule.Type, customOperator/CustomOperator.Type, customOperator/Equal.Type, customOperator/EqualRounded.Type, customOperator/FieldValue.Type, customOperator/Index.Type, customOperator/Inside.Type, customOperator/Logic0toMany.Type, customOperator/Logic1toMany.Type, customOperator/LogicPair.Type, customOperator/LogicSingle.Type, customOperator/LookupOutcomeValue.Type, customOperator/MathOperator.Type, customOperator/OutcomeIf.Type, customOperator/PatternMatch.Type, customOperator/Repeat.Type, customOperator/ResponseIf.Type, customOperator/RoundTo.Type, customOperator/SetValue.Type, customOperator/StatsOperator.Type, customOperator/StringMatch.Type, customOperator/Substring.Type, customOperator/TemplateConstraint.Type, customOperator/TemplateDefault.Type, customOperator/TemplateIf.Type, customOperator/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="definition.CustomOperator.Attr">
        <xs:attribute name="definition" use="optional" type="xs:anyURI" />
    </xs:attributeGroup>

### 4.3.118 "delimiter.PrintedVariable.Attr" Attribute Group Description

The XSD description for the "delimiter.PrintedVariable.Attr" Attribute Group is given in Table 4.3.118.

Table 4.3.118 XSD description for the "delimiter.PrintedVariable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PrintedVariable.Type
Elements | printedVariable/TemplateBlock.Type, printedVariable/TemplateBlockFeedbackBlock.Type, printedVariable/FeedbackBlock.Type, printedVariable/ModalFeedback.Type, printedVariable/TestFeedback.Type, printedVariable/FeedbackInline.Type, printedVariable/DD.Type, printedVariable/Div.Type, printedVariable/LI.Type, printedVariable/TDH.Type, printedVariable/InfoControl.Type, printedVariable/SimpleAssociableChoice.Type, printedVariable/SimpleChoice.Type, printedVariable/GapText.Type, printedVariable/HotText.Type, printedVariable/InlineChoice.Type, printedVariable/Label.Type, printedVariable/A.Type, printedVariable/Caption.Type, printedVariable/DT.Type, printedVariable/HTMLText.Type, printedVariable/Q.Type, printedVariable/TemplateInline.Type, printedVariable/RubricBlock.Type, printedVariable/RubricBlockTemplateBlock.Type, printedVariable/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="delimiter.PrintedVariable.Attr">
        <xs:attribute name="delimiter" use="optional" default=";" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.119 "dir.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "dir.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.119.

Table 4.3.119 XSD description for the "dir.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="dir.BasePromptInteraction.Attr">
        <xs:attribute name="dir" use="optional" default="auto">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="ltr" />
                    <xs:enumeration value="rtl" />
                    <xs:enumeration value="auto" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.120 "dir.BaseSequence.Attr" Attribute Group Description

The XSD description for the "dir.BaseSequence.Attr" Attribute Group is given in Table 4.3.120.

Table 4.3.120 XSD description for the "dir.BaseSequence.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequence.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type, caption/Table.Type, colgroup/Table.Type, gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type, gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type, infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type, inlineChoice/InlineChoiceInteraction.Type, li/OUL.Type, prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type, simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type, simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type, stimulusBody/AssessmentStimulus.Type, tbody/Table.Type, td/TR.Type, tfoot/Table.Type, th/TR.Type, thead/Table.Type, tr/TablePart.Type
Source |
    <xs:attributeGroup name="dir.BaseSequence.Attr">
        <xs:attribute name="dir" use="optional" default="auto">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="ltr" />
                    <xs:enumeration value="rtl" />
                    <xs:enumeration value="auto" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.121 "dir.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "dir.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.121.

Table 4.3.121 XSD description for the "dir.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="dir.BaseSequenceFull.Attr">
        <xs:attribute name="dir" use="optional" default="auto">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="ltr" />
                    <xs:enumeration value="rtl" />
                    <xs:enumeration value="auto" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.122 "dir.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "dir.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.122.

Table 4.3.122 XSD description for the "dir.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="dir.BaseSequenceRIdent.Attr">
        <xs:attribute name="dir" use="optional" default="auto">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="ltr" />
                    <xs:enumeration value="rtl" />
                    <xs:enumeration value="auto" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.123 "dir.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "dir.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.123.

Table 4.3.123 XSD description for the "dir.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="dir.BaseSequenceXBase.Attr">
        <xs:attribute name="dir" use="optional" default="auto">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="ltr" />
                    <xs:enumeration value="rtl" />
                    <xs:enumeration value="auto" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.124 "dir.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "dir.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.124.

Table 4.3.124 XSD description for the "dir.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="dir.BaseSequenceXBaseEmpty.Attr">
        <xs:attribute name="dir" use="optional" default="auto">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="ltr" />
                    <xs:enumeration value="rtl" />
                    <xs:enumeration value="auto" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.125 "dir.ItemBody.Attr" Attribute Group Description

The XSD description for the "dir.ItemBody.Attr" Attribute Group is given in Table 4.3.125.

Table 4.3.125 XSD description for the "dir.ItemBody.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ItemBody.Type
Elements | itemBody/AssessmentItem.Type
Source |
    <xs:attributeGroup name="dir.ItemBody.Attr">
        <xs:attribute name="dir" use="optional" default="auto">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="ltr" />
                    <xs:enumeration value="rtl" />
                    <xs:enumeration value="auto" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.126 "excludeCategory.Number.Attr" Attribute Group Description

The XSD description for the "excludeCategory.Number.Attr" Attribute Group is given in Table 4.3.126.

Table 4.3.126 XSD description for the "excludeCategory.Number.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Number.Type
Elements | numberIncorrect/AnyN.Type, numberIncorrect/BranchRule.Type, numberIncorrect/CustomOperator.Type, numberIncorrect/Equal.Type, numberIncorrect/EqualRounded.Type, numberIncorrect/FieldValue.Type, numberIncorrect/Index.Type, numberIncorrect/Inside.Type, numberIncorrect/Logic0toMany.Type, numberIncorrect/Logic1toMany.Type, numberIncorrect/LogicPair.Type, numberIncorrect/LogicSingle.Type, numberIncorrect/LookupOutcomeValue.Type, numberIncorrect/MathOperator.Type, numberIncorrect/OutcomeIf.Type, numberIncorrect/PatternMatch.Type, numberIncorrect/Repeat.Type, numberIncorrect/ResponseIf.Type, numberIncorrect/RoundTo.Type, numberIncorrect/SetValue.Type, numberIncorrect/StatsOperator.Type, numberIncorrect/StringMatch.Type, numberIncorrect/Substring.Type, numberIncorrect/TemplateConstraint.Type, numberIncorrect/TemplateDefault.Type, numberIncorrect/TemplateIf.Type, numberCorrect/AnyN.Type, numberCorrect/BranchRule.Type, numberCorrect/CustomOperator.Type, numberCorrect/Equal.Type, numberCorrect/EqualRounded.Type, numberCorrect/FieldValue.Type, numberCorrect/Index.Type, numberCorrect/Inside.Type, numberCorrect/Logic0toMany.Type, numberCorrect/Logic1toMany.Type, numberCorrect/LogicPair.Type, numberCorrect/LogicSingle.Type, numberCorrect/LookupOutcomeValue.Type, numberCorrect/MathOperator.Type, numberCorrect/OutcomeIf.Type, numberCorrect/PatternMatch.Type, numberCorrect/Repeat.Type, numberCorrect/ResponseIf.Type, numberCorrect/RoundTo.Type, numberCorrect/SetValue.Type, numberCorrect/StatsOperator.Type, numberCorrect/StringMatch.Type, numberCorrect/Substring.Type, numberCorrect/TemplateConstraint.Type, numberCorrect/TemplateDefault.Type, numberCorrect/TemplateIf.Type, numberPresented/AnyN.Type, numberPresented/BranchRule.Type, numberPresented/CustomOperator.Type, numberPresented/Equal.Type, numberPresented/EqualRounded.Type, numberPresented/FieldValue.Type, numberPresented/Index.Type, numberPresented/Inside.Type, numberPresented/Logic0toMany.Type, numberPresented/Logic1toMany.Type, numberPresented/LogicPair.Type, numberPresented/LogicSingle.Type, numberPresented/LookupOutcomeValue.Type, numberPresented/MathOperator.Type, numberPresented/OutcomeIf.Type, numberPresented/PatternMatch.Type, numberPresented/Repeat.Type, numberPresented/ResponseIf.Type, numberPresented/RoundTo.Type, numberPresented/SetValue.Type, numberPresented/StatsOperator.Type, numberPresented/StringMatch.Type, numberPresented/Substring.Type, numberPresented/TemplateConstraint.Type, numberPresented/TemplateDefault.Type, numberPresented/TemplateIf.Type, numberResponded/AnyN.Type, numberResponded/BranchRule.Type, numberResponded/CustomOperator.Type, numberResponded/Equal.Type, numberResponded/EqualRounded.Type, numberResponded/FieldValue.Type, numberResponded/Index.Type, numberResponded/Inside.Type, numberResponded/Logic0toMany.Type, numberResponded/Logic1toMany.Type, numberResponded/LogicPair.Type, numberResponded/LogicSingle.Type, numberResponded/LookupOutcomeValue.Type, numberResponded/MathOperator.Type, numberResponded/OutcomeIf.Type, numberResponded/PatternMatch.Type, numberResponded/Repeat.Type, numberResponded/ResponseIf.Type, numberResponded/RoundTo.Type, numberResponded/SetValue.Type, numberResponded/StatsOperator.Type, numberResponded/StringMatch.Type, numberResponded/Substring.Type, numberResponded/TemplateConstraint.Type, numberResponded/TemplateDefault.Type, numberResponded/TemplateIf.Type, numberSelected/AnyN.Type, numberSelected/BranchRule.Type, numberSelected/CustomOperator.Type, numberSelected/Equal.Type, numberSelected/EqualRounded.Type, numberSelected/FieldValue.Type, numberSelected/Index.Type, numberSelected/Inside.Type, numberSelected/Logic0toMany.Type, numberSelected/Logic1toMany.Type, numberSelected/LogicPair.Type, numberSelected/LogicSingle.Type, numberSelected/LookupOutcomeValue.Type, numberSelected/MathOperator.Type, numberSelected/OutcomeIf.Type, numberSelected/PatternMatch.Type, numberSelected/Repeat.Type, numberSelected/ResponseIf.Type, numberSelected/RoundTo.Type, numberSelected/SetValue.Type, numberSelected/StatsOperator.Type, numberSelected/StringMatch.Type, numberSelected/Substring.Type, numberSelected/TemplateConstraint.Type, numberSelected/TemplateDefault.Type, numberSelected/TemplateIf.Type, numberIncorrect/NumericLogic1toMany.Type, numberCorrect/NumericLogic1toMany.Type, numberPresented/NumericLogic1toMany.Type, numberResponded/NumericLogic1toMany.Type, numberSelected/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="excludeCategory.Number.Attr">
        <xs:attribute name="excludeCategory" use="optional">
            <xs:simpleType>
                <xs:list itemType="IdentifierList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.127 "excludeCategory.OutcomeMinMax.Attr" Attribute Group Description

The XSD description for the "excludeCategory.OutcomeMinMax.Attr" Attribute Group is given in Table 4.3.127.

Table 4.3.127 XSD description for the "excludeCategory.OutcomeMinMax.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | OutcomeMinMax.Type
Elements | outcomeMinimum/AnyN.Type, outcomeMinimum/BranchRule.Type, outcomeMinimum/CustomOperator.Type, outcomeMinimum/Equal.Type, outcomeMinimum/EqualRounded.Type, outcomeMinimum/FieldValue.Type, outcomeMinimum/Index.Type, outcomeMinimum/Inside.Type, outcomeMinimum/Logic0toMany.Type, outcomeMinimum/Logic1toMany.Type, outcomeMinimum/LogicPair.Type, outcomeMinimum/LogicSingle.Type, outcomeMinimum/LookupOutcomeValue.Type, outcomeMinimum/MathOperator.Type, outcomeMinimum/OutcomeIf.Type, outcomeMinimum/PatternMatch.Type, outcomeMinimum/Repeat.Type, outcomeMinimum/ResponseIf.Type, outcomeMinimum/RoundTo.Type, outcomeMinimum/SetValue.Type, outcomeMinimum/StatsOperator.Type, outcomeMinimum/StringMatch.Type, outcomeMinimum/Substring.Type, outcomeMinimum/TemplateConstraint.Type, outcomeMinimum/TemplateDefault.Type, outcomeMinimum/TemplateIf.Type, outcomeMaximum/AnyN.Type, outcomeMaximum/BranchRule.Type, outcomeMaximum/CustomOperator.Type, outcomeMaximum/Equal.Type, outcomeMaximum/EqualRounded.Type, outcomeMaximum/FieldValue.Type, outcomeMaximum/Index.Type, outcomeMaximum/Inside.Type, outcomeMaximum/Logic0toMany.Type, outcomeMaximum/Logic1toMany.Type, outcomeMaximum/LogicPair.Type, outcomeMaximum/LogicSingle.Type, outcomeMaximum/LookupOutcomeValue.Type, outcomeMaximum/MathOperator.Type, outcomeMaximum/OutcomeIf.Type, outcomeMaximum/PatternMatch.Type, outcomeMaximum/Repeat.Type, outcomeMaximum/ResponseIf.Type, outcomeMaximum/RoundTo.Type, outcomeMaximum/SetValue.Type, outcomeMaximum/StatsOperator.Type, outcomeMaximum/StringMatch.Type, outcomeMaximum/Substring.Type, outcomeMaximum/TemplateConstraint.Type, outcomeMaximum/TemplateDefault.Type, outcomeMaximum/TemplateIf.Type, outcomeMinimum/NumericLogic1toMany.Type, outcomeMaximum/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="excludeCategory.OutcomeMinMax.Attr">
        <xs:attribute name="excludeCategory" use="optional">
            <xs:simpleType>
                <xs:list itemType="IdentifierList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.128 "excludeCategory.TestVariables.Attr" Attribute Group Description

The XSD description for the "excludeCategory.TestVariables.Attr" Attribute Group is given in Table 4.3.128.

Table 4.3.128 XSD description for the "excludeCategory.TestVariables.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TestVariables.Type
Elements | testVariables/AnyN.Type, testVariables/BranchRule.Type, testVariables/CustomOperator.Type, testVariables/Equal.Type, testVariables/EqualRounded.Type, testVariables/FieldValue.Type, testVariables/Index.Type, testVariables/Inside.Type, testVariables/Logic0toMany.Type, testVariables/Logic1toMany.Type, testVariables/LogicPair.Type, testVariables/LogicSingle.Type, testVariables/LookupOutcomeValue.Type, testVariables/MathOperator.Type, testVariables/OutcomeIf.Type, testVariables/PatternMatch.Type, testVariables/Repeat.Type, testVariables/ResponseIf.Type, testVariables/RoundTo.Type, testVariables/SetValue.Type, testVariables/StatsOperator.Type, testVariables/StringMatch.Type, testVariables/Substring.Type, testVariables/TemplateConstraint.Type, testVariables/TemplateDefault.Type, testVariables/TemplateIf.Type, testVariables/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="excludeCategory.TestVariables.Attr">
        <xs:attribute name="excludeCategory" use="optional">
            <xs:simpleType>
                <xs:list itemType="IdentifierList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.129 "expectedLength.ExtendedTextInteraction.Attr" Attribute Group Description

The XSD description for the "expectedLength.ExtendedTextInteraction.Attr" Attribute Group is given in Table 4.3.129.

Table 4.3.129 XSD description for the "expectedLength.ExtendedTextInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ExtendedTextInteraction.Type
Elements | extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type
Source |
    <xs:attributeGroup name="expectedLength.ExtendedTextInteraction.Attr">
        <xs:attribute name="expectedLength" use="optional" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.130 "expectedLength.TextEntryInteraction.Attr" Attribute Group Description

The XSD description for the "expectedLength.TextEntryInteraction.Attr" Attribute Group is given in Table 4.3.130.

Table 4.3.130 XSD description for the "expectedLength.TextEntryInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TextEntryInteraction.Type
Elements | textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="expectedLength.TextEntryInteraction.Attr">
        <xs:attribute name="expectedLength" use="optional" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.131 "expectedLines.ExtendedTextInteraction.Attr" Attribute Group Description

The XSD description for the "expectedLines.ExtendedTextInteraction.Attr" Attribute Group is given in Table 4.3.131.

Table 4.3.131 XSD description for the "expectedLines.ExtendedTextInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ExtendedTextInteraction.Type
Elements | extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type
Source |
    <xs:attributeGroup name="expectedLines.ExtendedTextInteraction.Attr">
        <xs:attribute name="expectedLines" use="optional" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.132 "extension.CustomInteraction.Attr" Attribute Group Description

The XSD description for the "extension.CustomInteraction.Attr" Attribute Group is given in Table 4.3.132.

Table 4.3.132 XSD description for the "extension.CustomInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | CustomInteraction.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type
Source |
    <xs:attributeGroup name="extension.CustomInteraction.Attr">
        <xs:anyAttribute namespace = "##other" processContents = "lax" />
    </xs:attributeGroup>

### 4.3.133 "extension.CustomOperator.Attr" Attribute Group Description

The XSD description for the "extension.CustomOperator.Attr" Attribute Group is given in Table 4.3.133.

Table 4.3.133 XSD description for the "extension.CustomOperator.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | CustomOperator.Type
Elements | customOperator/AnyN.Type, customOperator/BranchRule.Type, customOperator/CustomOperator.Type, customOperator/Equal.Type, customOperator/EqualRounded.Type, customOperator/FieldValue.Type, customOperator/Index.Type, customOperator/Inside.Type, customOperator/Logic0toMany.Type, customOperator/Logic1toMany.Type, customOperator/LogicPair.Type, customOperator/LogicSingle.Type, customOperator/LookupOutcomeValue.Type, customOperator/MathOperator.Type, customOperator/OutcomeIf.Type, customOperator/PatternMatch.Type, customOperator/Repeat.Type, customOperator/ResponseIf.Type, customOperator/RoundTo.Type, customOperator/SetValue.Type, customOperator/StatsOperator.Type, customOperator/StringMatch.Type, customOperator/Substring.Type, customOperator/TemplateConstraint.Type, customOperator/TemplateDefault.Type, customOperator/TemplateIf.Type, customOperator/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="extension.CustomOperator.Attr">
        <xs:anyAttribute namespace = "##other" processContents = "lax" />
    </xs:attributeGroup>

### 4.3.134 "extension.Ordering.Attr" Attribute Group Description

The XSD description for the "extension.Ordering.Attr" Attribute Group is given in Table 4.3.134.

Table 4.3.134 XSD description for the "extension.Ordering.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Ordering.Type
Elements | ordering/AssessmentSection.Type
Source |
    <xs:attributeGroup name="extension.Ordering.Attr">
        <xs:anyAttribute namespace = "##other" processContents = "strict" />
    </xs:attributeGroup>

### 4.3.135 "extension.Selection.Attr" Attribute Group Description

The XSD description for the "extension.Selection.Attr" Attribute Group is given in Table 4.3.135.

Table 4.3.135 XSD description for the "extension.Selection.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Selection.Type
Elements | selection/AssessmentSection.Type
Source |
    <xs:attributeGroup name="extension.Selection.Attr">
        <xs:anyAttribute namespace = "##other" processContents = "strict" />
    </xs:attributeGroup>

### 4.3.136 "externalScored.OutcomeDeclaration.Attr" Attribute Group Description

The XSD description for the "externalScored.OutcomeDeclaration.Attr" Attribute Group is given in Table 4.3.136.

Table 4.3.136 XSD description for the "externalScored.OutcomeDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | outcomeDeclaration
ComplexTypes | OutcomeDeclaration.Type
Source |
    <xs:attributeGroup name="externalScored.OutcomeDeclaration.Attr">
        <xs:attribute name="externalScored" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="externalMachine" />
                    <xs:enumeration value="human" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.137 "field.PrintedVariable.Attr" Attribute Group Description

The XSD description for the "field.PrintedVariable.Attr" Attribute Group is given in Table 4.3.137.

Table 4.3.137 XSD description for the "field.PrintedVariable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PrintedVariable.Type
Elements | printedVariable/TemplateBlock.Type, printedVariable/TemplateBlockFeedbackBlock.Type, printedVariable/FeedbackBlock.Type, printedVariable/ModalFeedback.Type, printedVariable/TestFeedback.Type, printedVariable/FeedbackInline.Type, printedVariable/DD.Type, printedVariable/Div.Type, printedVariable/LI.Type, printedVariable/TDH.Type, printedVariable/InfoControl.Type, printedVariable/SimpleAssociableChoice.Type, printedVariable/SimpleChoice.Type, printedVariable/GapText.Type, printedVariable/HotText.Type, printedVariable/InlineChoice.Type, printedVariable/Label.Type, printedVariable/A.Type, printedVariable/Caption.Type, printedVariable/DT.Type, printedVariable/HTMLText.Type, printedVariable/Q.Type, printedVariable/TemplateInline.Type, printedVariable/RubricBlock.Type, printedVariable/RubricBlockTemplateBlock.Type, printedVariable/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="field.PrintedVariable.Attr">
        <xs:attribute name="field" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.138 "fieldIdentifier.FieldValue.Attr" Attribute Group Description

The XSD description for the "fieldIdentifier.FieldValue.Attr" Attribute Group is given in Table 4.3.138.

Table 4.3.138 XSD description for the "fieldIdentifier.FieldValue.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | FieldValue.Type
Elements | fieldValue/AnyN.Type, fieldValue/BranchRule.Type, fieldValue/CustomOperator.Type, fieldValue/Equal.Type, fieldValue/EqualRounded.Type, fieldValue/FieldValue.Type, fieldValue/Index.Type, fieldValue/Inside.Type, fieldValue/Logic0toMany.Type, fieldValue/Logic1toMany.Type, fieldValue/LogicPair.Type, fieldValue/LogicSingle.Type, fieldValue/LookupOutcomeValue.Type, fieldValue/MathOperator.Type, fieldValue/OutcomeIf.Type, fieldValue/PatternMatch.Type, fieldValue/Repeat.Type, fieldValue/ResponseIf.Type, fieldValue/RoundTo.Type, fieldValue/SetValue.Type, fieldValue/StatsOperator.Type, fieldValue/StringMatch.Type, fieldValue/Substring.Type, fieldValue/TemplateConstraint.Type, fieldValue/TemplateDefault.Type, fieldValue/TemplateIf.Type, fieldValue/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="fieldIdentifier.FieldValue.Attr">
        <xs:attribute name="fieldIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.139 "fieldIdentifier.Value.Attr" Attribute Group Description

The XSD description for the "fieldIdentifier.Value.Attr" Attribute Group is given in Table 4.3.139.

Table 4.3.139 XSD description for the "fieldIdentifier.Value.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Value.Type
Elements | value/CorrectResponse.Type, value/DefaultValue.Type
Source |
    <xs:attributeGroup name="fieldIdentifier.Value.Attr">
        <xs:attribute name="fieldIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.140 "figures.EqualRounded.Attr" Attribute Group Description

The XSD description for the "figures.EqualRounded.Attr" Attribute Group is given in Table 4.3.140.

Table 4.3.140 XSD description for the "figures.EqualRounded.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | EqualRounded.Type
Elements | equalRounded/AnyN.Type, equalRounded/BranchRule.Type, equalRounded/CustomOperator.Type, equalRounded/Equal.Type, equalRounded/EqualRounded.Type, equalRounded/FieldValue.Type, equalRounded/Index.Type, equalRounded/Inside.Type, equalRounded/Logic0toMany.Type, equalRounded/Logic1toMany.Type, equalRounded/LogicPair.Type, equalRounded/LogicSingle.Type, equalRounded/LookupOutcomeValue.Type, equalRounded/MathOperator.Type, equalRounded/OutcomeIf.Type, equalRounded/PatternMatch.Type, equalRounded/Repeat.Type, equalRounded/ResponseIf.Type, equalRounded/RoundTo.Type, equalRounded/SetValue.Type, equalRounded/StatsOperator.Type, equalRounded/StringMatch.Type, equalRounded/Substring.Type, equalRounded/TemplateConstraint.Type, equalRounded/TemplateDefault.Type, equalRounded/TemplateIf.Type
Source |
    <xs:attributeGroup name="figures.EqualRounded.Attr">
        <xs:attribute name="figures" use="required">
            <xs:simpleType>
                <xs:union>
                    <xs:simpleType>
                        <xs:restriction base="xs:integer" />
                    </xs:simpleType>
                    <xs:simpleType>
                        <xs:restriction base="VariableString.Type" />
                    </xs:simpleType>
                </xs:union>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.141 "figures.RoundTo.Attr" Attribute Group Description

The XSD description for the "figures.RoundTo.Attr" Attribute Group is given in Table 4.3.141.

Table 4.3.141 XSD description for the "figures.RoundTo.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | RoundTo.Type
Elements | roundTo/AnyN.Type, roundTo/BranchRule.Type, roundTo/CustomOperator.Type, roundTo/Equal.Type, roundTo/EqualRounded.Type, roundTo/FieldValue.Type, roundTo/Index.Type, roundTo/Inside.Type, roundTo/Logic0toMany.Type, roundTo/Logic1toMany.Type, roundTo/LogicPair.Type, roundTo/LogicSingle.Type, roundTo/LookupOutcomeValue.Type, roundTo/MathOperator.Type, roundTo/OutcomeIf.Type, roundTo/PatternMatch.Type, roundTo/Repeat.Type, roundTo/ResponseIf.Type, roundTo/RoundTo.Type, roundTo/SetValue.Type, roundTo/StatsOperator.Type, roundTo/StringMatch.Type, roundTo/Substring.Type, roundTo/TemplateConstraint.Type, roundTo/TemplateDefault.Type, roundTo/TemplateIf.Type, roundTo/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="figures.RoundTo.Attr">
        <xs:attribute name="figures" use="required">
            <xs:simpleType>
                <xs:union>
                    <xs:simpleType>
                        <xs:restriction base="xs:integer" />
                    </xs:simpleType>
                    <xs:simpleType>
                        <xs:restriction base="VariableString.Type" />
                    </xs:simpleType>
                </xs:union>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.142 "fixed.AssessmentItemRef.Attr" Attribute Group Description

The XSD description for the "fixed.AssessmentItemRef.Attr" Attribute Group is given in Table 4.3.142.

Table 4.3.142 XSD description for the "fixed.AssessmentItemRef.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssessmentItemRef.Type
Elements | assessmentItemRef/AssessmentSection.Type
Source |
    <xs:attributeGroup name="fixed.AssessmentItemRef.Attr">
        <xs:attribute name="fixed" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.143 "fixed.AssessmentSection.Attr" Attribute Group Description

The XSD description for the "fixed.AssessmentSection.Attr" Attribute Group is given in Table 4.3.143.

Table 4.3.143 XSD description for the "fixed.AssessmentSection.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentSection
ComplexTypes | AssessmentSection.Type
Source |
    <xs:attributeGroup name="fixed.AssessmentSection.Attr">
        <xs:attribute name="fixed" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.144 "fixed.InlineChoice.Attr" Attribute Group Description

The XSD description for the "fixed.InlineChoice.Attr" Attribute Group is given in Table 4.3.144.

Table 4.3.144 XSD description for the "fixed.InlineChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | InlineChoice.Type
Elements | inlineChoice/InlineChoiceInteraction.Type
Source |
    <xs:attributeGroup name="fixed.InlineChoice.Attr">
        <xs:attribute name="fixed" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.145 "fixed.SimpleAssociableChoice.Attr" Attribute Group Description

The XSD description for the "fixed.SimpleAssociableChoice.Attr" Attribute Group is given in Table 4.3.145.

Table 4.3.145 XSD description for the "fixed.SimpleAssociableChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SimpleAssociableChoice.Type
Elements | simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type
Source |
    <xs:attributeGroup name="fixed.SimpleAssociableChoice.Attr">
        <xs:attribute name="fixed" use="optional" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.146 "fixed.SimpleChoice.Attr" Attribute Group Description

The XSD description for the "fixed.SimpleChoice.Attr" Attribute Group is given in Table 4.3.146.

Table 4.3.146 XSD description for the "fixed.SimpleChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SimpleChoice.Type
Elements | simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type
Source |
    <xs:attributeGroup name="fixed.SimpleChoice.Attr">
        <xs:attribute name="fixed" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.147 "format.ExtendedTextInteraction.Attr" Attribute Group Description

The XSD description for the "format.ExtendedTextInteraction.Attr" Attribute Group is given in Table 4.3.147.

Table 4.3.147 XSD description for the "format.ExtendedTextInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ExtendedTextInteraction.Type
Elements | extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type
Source |
    <xs:attributeGroup name="format.ExtendedTextInteraction.Attr">
        <xs:attribute name="format" use="optional" default="plain">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="plain" />
                    <xs:enumeration value="preformatted" />
                    <xs:enumeration value="xhtml" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.148 "format.PrintedVariable.Attr" Attribute Group Description

The XSD description for the "format.PrintedVariable.Attr" Attribute Group is given in Table 4.3.148.

Table 4.3.148 XSD description for the "format.PrintedVariable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PrintedVariable.Type
Elements | printedVariable/TemplateBlock.Type, printedVariable/TemplateBlockFeedbackBlock.Type, printedVariable/FeedbackBlock.Type, printedVariable/ModalFeedback.Type, printedVariable/TestFeedback.Type, printedVariable/FeedbackInline.Type, printedVariable/DD.Type, printedVariable/Div.Type, printedVariable/LI.Type, printedVariable/TDH.Type, printedVariable/InfoControl.Type, printedVariable/SimpleAssociableChoice.Type, printedVariable/SimpleChoice.Type, printedVariable/GapText.Type, printedVariable/HotText.Type, printedVariable/InlineChoice.Type, printedVariable/Label.Type, printedVariable/A.Type, printedVariable/Caption.Type, printedVariable/DT.Type, printedVariable/HTMLText.Type, printedVariable/Q.Type, printedVariable/TemplateInline.Type, printedVariable/RubricBlock.Type, printedVariable/RubricBlockTemplateBlock.Type, printedVariable/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="format.PrintedVariable.Attr">
        <xs:attribute name="format" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.149 "format.TextEntryInteraction.Attr" Attribute Group Description

The XSD description for the "format.TextEntryInteraction.Attr" Attribute Group is given in Table 4.3.149.

Table 4.3.149 XSD description for the "format.TextEntryInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TextEntryInteraction.Type
Elements | textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="format.TextEntryInteraction.Attr">
        <xs:attribute name="format" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.150 "headers.TDH.Attr" Attribute Group Description

The XSD description for the "headers.TDH.Attr" Attribute Group is given in Table 4.3.150.

Table 4.3.150 XSD description for the "headers.TDH.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TDH.Type
Elements | td/TR.Type, th/TR.Type
Source |
    <xs:attributeGroup name="headers.TDH.Attr">
        <xs:attribute name="headers" use="optional">
            <xs:simpleType>
                <xs:list itemType="IdentifierList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.151 "height.Img.Attr" Attribute Group Description

The XSD description for the "height.Img.Attr" Attribute Group is given in Table 4.3.151.

Table 4.3.151 XSD description for the "height.Img.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Img.Type
Elements | img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="height.Img.Attr">
        <xs:attribute name="height" use="optional" type="Length.Type" />
    </xs:attributeGroup>

### 4.3.152 "height.Object.Attr" Attribute Group Description

The XSD description for the "height.Object.Attr" Attribute Group is given in Table 4.3.152.

Table 4.3.152 XSD description for the "height.Object.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Object.Type
Elements | object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type
Source |
    <xs:attributeGroup name="height.Object.Attr">
        <xs:attribute name="height" use="optional" type="Length.Type" />
    </xs:attributeGroup>

### 4.3.153 "hotspotLabel.AssociableHotspot.Attr" Attribute Group Description

The XSD description for the "hotspotLabel.AssociableHotspot.Attr" Attribute Group is given in Table 4.3.153.

Table 4.3.153 XSD description for the "hotspotLabel.AssociableHotspot.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssociableHotspot.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="hotspotLabel.AssociableHotspot.Attr">
        <xs:attribute name="hotspotLabel" use="optional" type="xs:string" />
    </xs:attributeGroup>

### 4.3.154 "hotspotLabel.HotspotChoice.Attr" Attribute Group Description

The XSD description for the "hotspotLabel.HotspotChoice.Attr" Attribute Group is given in Table 4.3.154.

Table 4.3.154 XSD description for the "hotspotLabel.HotspotChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | HotspotChoice.Type
Elements | hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type
Source |
    <xs:attributeGroup name="hotspotLabel.HotspotChoice.Attr">
        <xs:attribute name="hotspotLabel" use="optional" type="xs:string" />
    </xs:attributeGroup>

### 4.3.155 "href.A.Attr" Attribute Group Description

The XSD description for the "href.A.Attr" Attribute Group is given in Table 4.3.155.

Table 4.3.155 XSD description for the "href.A.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | A.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="href.A.Attr">
        <xs:attribute name="href" use="required" type="xs:anyURI" />
    </xs:attributeGroup>

### 4.3.156 "href.AssessmentItemRef.Attr" Attribute Group Description

The XSD description for the "href.AssessmentItemRef.Attr" Attribute Group is given in Table 4.3.156.

Table 4.3.156 XSD description for the "href.AssessmentItemRef.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssessmentItemRef.Type
Elements | assessmentItemRef/AssessmentSection.Type
Source |
    <xs:attributeGroup name="href.AssessmentItemRef.Attr">
        <xs:attribute name="href" use="required" type="xs:anyURI" />
    </xs:attributeGroup>

### 4.3.157 "href.AssessmentSectionRef.Attr" Attribute Group Description

The XSD description for the "href.AssessmentSectionRef.Attr" Attribute Group is given in Table 4.3.157.

Table 4.3.157 XSD description for the "href.AssessmentSectionRef.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssessmentSectionRef.Type
Elements | assessmentSectionRef/TestPart.Type, assessmentSectionRef/AssessmentSection.Type
Source |
    <xs:attributeGroup name="href.AssessmentSectionRef.Attr">
        <xs:attribute name="href" use="required" type="xs:anyURI" />
    </xs:attributeGroup>

### 4.3.158 "href.AssessmentStimulusRef.Attr" Attribute Group Description

The XSD description for the "href.AssessmentStimulusRef.Attr" Attribute Group is given in Table 4.3.158.

Table 4.3.158 XSD description for the "href.AssessmentStimulusRef.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssessmentStimulusRef.Type
Elements | assessmentStimulusRef/AssessmentItem.Type
Source |
    <xs:attributeGroup name="href.AssessmentStimulusRef.Attr">
        <xs:attribute name="href" use="required" type="xs:anyURI" />
    </xs:attributeGroup>

### 4.3.159 "href.StyleSheet.Attr" Attribute Group Description

The XSD description for the "href.StyleSheet.Attr" Attribute Group is given in Table 4.3.159.

Table 4.3.159 XSD description for the "href.StyleSheet.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | StyleSheet.Type
Elements | stylesheet/AssessmentItem.Type, stylesheet/AssessmentStimulus.Type, stylesheet/AssessmentTest.Type, stylesheet/FeedbackBlock.Type, stylesheet/ModalFeedback.Type, stylesheet/RubricBlock.Type, stylesheet/RubricBlockTemplateBlock.Type, stylesheet/TemplateBlock.Type, stylesheet/TemplateBlockFeedbackBlock.Type, stylesheet/TestFeedback.Type
Source |
    <xs:attributeGroup name="href.StyleSheet.Attr">
        <xs:attribute name="href" use="required" type="xs:anyURI" />
    </xs:attributeGroup>

### 4.3.160 "id.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "id.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.160.

Table 4.3.160 XSD description for the "id.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="id.BasePromptInteraction.Attr">
        <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
    </xs:attributeGroup>

### 4.3.161 "id.BaseSequence.Attr" Attribute Group Description

The XSD description for the "id.BaseSequence.Attr" Attribute Group is given in Table 4.3.161.

Table 4.3.161 XSD description for the "id.BaseSequence.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequence.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type, caption/Table.Type, colgroup/Table.Type, gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type, gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type, infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type, inlineChoice/InlineChoiceInteraction.Type, li/OUL.Type, prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type, simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type, simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type, stimulusBody/AssessmentStimulus.Type, tbody/Table.Type, td/TR.Type, tfoot/Table.Type, th/TR.Type, thead/Table.Type, tr/TablePart.Type
Source |
    <xs:attributeGroup name="id.BaseSequence.Attr">
        <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
    </xs:attributeGroup>

### 4.3.162 "id.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "id.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.162.

Table 4.3.162 XSD description for the "id.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="id.BaseSequenceFull.Attr">
        <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
    </xs:attributeGroup>

### 4.3.163 "id.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "id.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.163.

Table 4.3.163 XSD description for the "id.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="id.BaseSequenceRIdent.Attr">
        <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
    </xs:attributeGroup>

### 4.3.164 "id.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "id.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.164.

Table 4.3.164 XSD description for the "id.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="id.BaseSequenceXBase.Attr">
        <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
    </xs:attributeGroup>

### 4.3.165 "id.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "id.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.165.

Table 4.3.165 XSD description for the "id.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="id.BaseSequenceXBaseEmpty.Attr">
        <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
    </xs:attributeGroup>

### 4.3.166 "id.ItemBody.Attr" Attribute Group Description

The XSD description for the "id.ItemBody.Attr" Attribute Group is given in Table 4.3.166.

Table 4.3.166 XSD description for the "id.ItemBody.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ItemBody.Type
Elements | itemBody/AssessmentItem.Type
Source |
    <xs:attributeGroup name="id.ItemBody.Attr">
        <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
    </xs:attributeGroup>

### 4.3.167 "id.PositionObjectStage.Attr" Attribute Group Description

The XSD description for the "id.PositionObjectStage.Attr" Attribute Group is given in Table 4.3.167.

Table 4.3.167 XSD description for the "id.PositionObjectStage.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PositionObjectStage.Type
Elements | positionObjectStage/BlockQuote.Type, positionObjectStage/FeedbackBlock.Type, positionObjectStage/ItemBody.Type, positionObjectStage/StimulusBody.Type, positionObjectStage/Div.Type
Source |
    <xs:attributeGroup name="id.PositionObjectStage.Attr">
        <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
    </xs:attributeGroup>

### 4.3.168 "id.PrintedVariable.Attr" Attribute Group Description

The XSD description for the "id.PrintedVariable.Attr" Attribute Group is given in Table 4.3.168.

Table 4.3.168 XSD description for the "id.PrintedVariable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PrintedVariable.Type
Elements | printedVariable/TemplateBlock.Type, printedVariable/TemplateBlockFeedbackBlock.Type, printedVariable/FeedbackBlock.Type, printedVariable/ModalFeedback.Type, printedVariable/TestFeedback.Type, printedVariable/FeedbackInline.Type, printedVariable/DD.Type, printedVariable/Div.Type, printedVariable/LI.Type, printedVariable/TDH.Type, printedVariable/InfoControl.Type, printedVariable/SimpleAssociableChoice.Type, printedVariable/SimpleChoice.Type, printedVariable/GapText.Type, printedVariable/HotText.Type, printedVariable/InlineChoice.Type, printedVariable/Label.Type, printedVariable/A.Type, printedVariable/Caption.Type, printedVariable/DT.Type, printedVariable/HTMLText.Type, printedVariable/Q.Type, printedVariable/TemplateInline.Type, printedVariable/RubricBlock.Type, printedVariable/RubricBlockTemplateBlock.Type, printedVariable/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="id.PrintedVariable.Attr">
        <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
    </xs:attributeGroup>

### 4.3.169 "id.SimpleMatchSet.Attr" Attribute Group Description

The XSD description for the "id.SimpleMatchSet.Attr" Attribute Group is given in Table 4.3.169.

Table 4.3.169 XSD description for the "id.SimpleMatchSet.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SimpleMatchSet.Type
Elements | simpleMatchSet/MatchInteraction.Type
Source |
    <xs:attributeGroup name="id.SimpleMatchSet.Attr">
        <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
    </xs:attributeGroup>

### 4.3.170 "identifier.AssessmentItem.Attr" Attribute Group Description

The XSD description for the "identifier.AssessmentItem.Attr" Attribute Group is given in Table 4.3.170.

Table 4.3.170 XSD description for the "identifier.AssessmentItem.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentItem
ComplexTypes | AssessmentItem.Type
Source |
    <xs:attributeGroup name="identifier.AssessmentItem.Attr">
        <xs:attribute name="identifier" use="required" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.171 "identifier.AssessmentItemRef.Attr" Attribute Group Description

The XSD description for the "identifier.AssessmentItemRef.Attr" Attribute Group is given in Table 4.3.171.

Table 4.3.171 XSD description for the "identifier.AssessmentItemRef.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssessmentItemRef.Type
Elements | assessmentItemRef/AssessmentSection.Type
Source |
    <xs:attributeGroup name="identifier.AssessmentItemRef.Attr">
        <xs:attribute name="identifier" use="required" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.172 "identifier.AssessmentSection.Attr" Attribute Group Description

The XSD description for the "identifier.AssessmentSection.Attr" Attribute Group is given in Table 4.3.172.

Table 4.3.172 XSD description for the "identifier.AssessmentSection.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentSection
ComplexTypes | AssessmentSection.Type
Source |
    <xs:attributeGroup name="identifier.AssessmentSection.Attr">
        <xs:attribute name="identifier" use="required" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.173 "identifier.AssessmentSectionRef.Attr" Attribute Group Description

The XSD description for the "identifier.AssessmentSectionRef.Attr" Attribute Group is given in Table 4.3.173.

Table 4.3.173 XSD description for the "identifier.AssessmentSectionRef.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssessmentSectionRef.Type
Elements | assessmentSectionRef/TestPart.Type, assessmentSectionRef/AssessmentSection.Type
Source |
    <xs:attributeGroup name="identifier.AssessmentSectionRef.Attr">
        <xs:attribute name="identifier" use="required" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.174 "identifier.AssessmentStimulus.Attr" Attribute Group Description

The XSD description for the "identifier.AssessmentStimulus.Attr" Attribute Group is given in Table 4.3.174.

Table 4.3.174 XSD description for the "identifier.AssessmentStimulus.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentStimulus
ComplexTypes | AssessmentStimulus.Type
Source |
    <xs:attributeGroup name="identifier.AssessmentStimulus.Attr">
        <xs:attribute name="identifier" use="required" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.175 "identifier.AssessmentStimulusRef.Attr" Attribute Group Description

The XSD description for the "identifier.AssessmentStimulusRef.Attr" Attribute Group is given in Table 4.3.175.

Table 4.3.175 XSD description for the "identifier.AssessmentStimulusRef.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssessmentStimulusRef.Type
Elements | assessmentStimulusRef/AssessmentItem.Type
Source |
    <xs:attributeGroup name="identifier.AssessmentStimulusRef.Attr">
        <xs:attribute name="identifier" use="required" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.176 "identifier.AssessmentTest.Attr" Attribute Group Description

The XSD description for the "identifier.AssessmentTest.Attr" Attribute Group is given in Table 4.3.176.

Table 4.3.176 XSD description for the "identifier.AssessmentTest.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentTest
ComplexTypes | AssessmentTest.Type
Source |
    <xs:attributeGroup name="identifier.AssessmentTest.Attr">
        <xs:attribute name="identifier" use="required" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.177 "identifier.AssociableHotspot.Attr" Attribute Group Description

The XSD description for the "identifier.AssociableHotspot.Attr" Attribute Group is given in Table 4.3.177.

Table 4.3.177 XSD description for the "identifier.AssociableHotspot.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssociableHotspot.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="identifier.AssociableHotspot.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.178 "identifier.Correct.Attr" Attribute Group Description

The XSD description for the "identifier.Correct.Attr" Attribute Group is given in Table 4.3.178.

Table 4.3.178 XSD description for the "identifier.Correct.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Correct.Type
Elements | correct/AnyN.Type, correct/BranchRule.Type, correct/CustomOperator.Type, correct/Equal.Type, correct/EqualRounded.Type, correct/FieldValue.Type, correct/Index.Type, correct/Inside.Type, correct/Logic0toMany.Type, correct/Logic1toMany.Type, correct/LogicPair.Type, correct/LogicSingle.Type, correct/LookupOutcomeValue.Type, correct/MathOperator.Type, correct/OutcomeIf.Type, correct/PatternMatch.Type, correct/Repeat.Type, correct/ResponseIf.Type, correct/RoundTo.Type, correct/SetValue.Type, correct/StatsOperator.Type, correct/StringMatch.Type, correct/Substring.Type, correct/TemplateConstraint.Type, correct/TemplateDefault.Type, correct/TemplateIf.Type, correct/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="identifier.Correct.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.179 "identifier.Default.Attr" Attribute Group Description

The XSD description for the "identifier.Default.Attr" Attribute Group is given in Table 4.3.179.

Table 4.3.179 XSD description for the "identifier.Default.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Default.Type
Elements | default/AnyN.Type, default/BranchRule.Type, default/CustomOperator.Type, default/Equal.Type, default/EqualRounded.Type, default/FieldValue.Type, default/Index.Type, default/Inside.Type, default/Logic0toMany.Type, default/Logic1toMany.Type, default/LogicPair.Type, default/LogicSingle.Type, default/LookupOutcomeValue.Type, default/MathOperator.Type, default/OutcomeIf.Type, default/PatternMatch.Type, default/Repeat.Type, default/ResponseIf.Type, default/RoundTo.Type, default/SetValue.Type, default/StatsOperator.Type, default/StringMatch.Type, default/Substring.Type, default/TemplateConstraint.Type, default/TemplateDefault.Type, default/TemplateIf.Type, default/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="identifier.Default.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.180 "identifier.FeedbackBlock.Attr" Attribute Group Description

The XSD description for the "identifier.FeedbackBlock.Attr" Attribute Group is given in Table 4.3.180.

Table 4.3.180 XSD description for the "identifier.FeedbackBlock.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | FeedbackBlock.Type
Elements | feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type
Source |
    <xs:attributeGroup name="identifier.FeedbackBlock.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.181 "identifier.FeedbackInline.Attr" Attribute Group Description

The XSD description for the "identifier.FeedbackInline.Attr" Attribute Group is given in Table 4.3.181.

Table 4.3.181 XSD description for the "identifier.FeedbackInline.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | FeedbackInline.Type
Elements | feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type
Source |
    <xs:attributeGroup name="identifier.FeedbackInline.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.182 "identifier.Gap.Attr" Attribute Group Description

The XSD description for the "identifier.Gap.Attr" Attribute Group is given in Table 4.3.182.

Table 4.3.182 XSD description for the "identifier.Gap.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Gap.Type
Elements | gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type
Source |
    <xs:attributeGroup name="identifier.Gap.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.183 "identifier.GapImg.Attr" Attribute Group Description

The XSD description for the "identifier.GapImg.Attr" Attribute Group is given in Table 4.3.183.

Table 4.3.183 XSD description for the "identifier.GapImg.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapImg.Type
Elements | gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="identifier.GapImg.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.184 "identifier.GapText.Attr" Attribute Group Description

The XSD description for the "identifier.GapText.Attr" Attribute Group is given in Table 4.3.184.

Table 4.3.184 XSD description for the "identifier.GapText.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapText.Type
Elements | gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="identifier.GapText.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.185 "identifier.HotText.Attr" Attribute Group Description

The XSD description for the "identifier.HotText.Attr" Attribute Group is given in Table 4.3.185.

Table 4.3.185 XSD description for the "identifier.HotText.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | HotText.Type
Elements | hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type
Source |
    <xs:attributeGroup name="identifier.HotText.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.186 "identifier.HotspotChoice.Attr" Attribute Group Description

The XSD description for the "identifier.HotspotChoice.Attr" Attribute Group is given in Table 4.3.186.

Table 4.3.186 XSD description for the "identifier.HotspotChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | HotspotChoice.Type
Elements | hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type
Source |
    <xs:attributeGroup name="identifier.HotspotChoice.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.187 "identifier.InlineChoice.Attr" Attribute Group Description

The XSD description for the "identifier.InlineChoice.Attr" Attribute Group is given in Table 4.3.187.

Table 4.3.187 XSD description for the "identifier.InlineChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | InlineChoice.Type
Elements | inlineChoice/InlineChoiceInteraction.Type
Source |
    <xs:attributeGroup name="identifier.InlineChoice.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.188 "identifier.LookupOutcomeValue.Attr" Attribute Group Description

The XSD description for the "identifier.LookupOutcomeValue.Attr" Attribute Group is given in Table 4.3.188.

Table 4.3.188 XSD description for the "identifier.LookupOutcomeValue.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | LookupOutcomeValue.Type
Elements | lookupOutcomeValue/OutcomeElse.Type, lookupOutcomeValue/OutcomeIf.Type, lookupOutcomeValue/OutcomeProcessing.Type, lookupOutcomeValue/OutcomeProcessingFragment.Type, lookupOutcomeValue/ResponseElse.Type, lookupOutcomeValue/ResponseIf.Type, lookupOutcomeValue/ResponseProcessing.Type, lookupOutcomeValue/ResponseProcessingFragment.Type
Source |
    <xs:attributeGroup name="identifier.LookupOutcomeValue.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.189 "identifier.MapResponse.Attr" Attribute Group Description

The XSD description for the "identifier.MapResponse.Attr" Attribute Group is given in Table 4.3.189.

Table 4.3.189 XSD description for the "identifier.MapResponse.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MapResponse.Type
Elements | mapResponsePoint/AnyN.Type, mapResponsePoint/BranchRule.Type, mapResponsePoint/CustomOperator.Type, mapResponsePoint/Equal.Type, mapResponsePoint/EqualRounded.Type, mapResponsePoint/FieldValue.Type, mapResponsePoint/Index.Type, mapResponsePoint/Inside.Type, mapResponsePoint/Logic0toMany.Type, mapResponsePoint/Logic1toMany.Type, mapResponsePoint/LogicPair.Type, mapResponsePoint/LogicSingle.Type, mapResponsePoint/LookupOutcomeValue.Type, mapResponsePoint/MathOperator.Type, mapResponsePoint/OutcomeIf.Type, mapResponsePoint/PatternMatch.Type, mapResponsePoint/Repeat.Type, mapResponsePoint/ResponseIf.Type, mapResponsePoint/RoundTo.Type, mapResponsePoint/SetValue.Type, mapResponsePoint/StatsOperator.Type, mapResponsePoint/StringMatch.Type, mapResponsePoint/Substring.Type, mapResponsePoint/TemplateConstraint.Type, mapResponsePoint/TemplateDefault.Type, mapResponsePoint/TemplateIf.Type, mapResponse/AnyN.Type, mapResponse/BranchRule.Type, mapResponse/CustomOperator.Type, mapResponse/Equal.Type, mapResponse/EqualRounded.Type, mapResponse/FieldValue.Type, mapResponse/Index.Type, mapResponse/Inside.Type, mapResponse/Logic0toMany.Type, mapResponse/Logic1toMany.Type, mapResponse/LogicPair.Type, mapResponse/LogicSingle.Type, mapResponse/LookupOutcomeValue.Type, mapResponse/MathOperator.Type, mapResponse/OutcomeIf.Type, mapResponse/PatternMatch.Type, mapResponse/Repeat.Type, mapResponse/ResponseIf.Type, mapResponse/RoundTo.Type, mapResponse/SetValue.Type, mapResponse/StatsOperator.Type, mapResponse/StringMatch.Type, mapResponse/Substring.Type, mapResponse/TemplateConstraint.Type, mapResponse/TemplateDefault.Type, mapResponse/TemplateIf.Type, mapResponsePoint/NumericLogic1toMany.Type, mapResponse/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="identifier.MapResponse.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.190 "identifier.ModalFeedback.Attr" Attribute Group Description

The XSD description for the "identifier.ModalFeedback.Attr" Attribute Group is given in Table 4.3.190.

Table 4.3.190 XSD description for the "identifier.ModalFeedback.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ModalFeedback.Type
Elements | modalFeedback/AssessmentItem.Type
Source |
    <xs:attributeGroup name="identifier.ModalFeedback.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.191 "identifier.OutcomeDeclaration.Attr" Attribute Group Description

The XSD description for the "identifier.OutcomeDeclaration.Attr" Attribute Group is given in Table 4.3.191.

Table 4.3.191 XSD description for the "identifier.OutcomeDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | outcomeDeclaration
ComplexTypes | OutcomeDeclaration.Type
Source |
    <xs:attributeGroup name="identifier.OutcomeDeclaration.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.192 "identifier.PrintedVariable.Attr" Attribute Group Description

The XSD description for the "identifier.PrintedVariable.Attr" Attribute Group is given in Table 4.3.192.

Table 4.3.192 XSD description for the "identifier.PrintedVariable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PrintedVariable.Type
Elements | printedVariable/TemplateBlock.Type, printedVariable/TemplateBlockFeedbackBlock.Type, printedVariable/FeedbackBlock.Type, printedVariable/ModalFeedback.Type, printedVariable/TestFeedback.Type, printedVariable/FeedbackInline.Type, printedVariable/DD.Type, printedVariable/Div.Type, printedVariable/LI.Type, printedVariable/TDH.Type, printedVariable/InfoControl.Type, printedVariable/SimpleAssociableChoice.Type, printedVariable/SimpleChoice.Type, printedVariable/GapText.Type, printedVariable/HotText.Type, printedVariable/InlineChoice.Type, printedVariable/Label.Type, printedVariable/A.Type, printedVariable/Caption.Type, printedVariable/DT.Type, printedVariable/HTMLText.Type, printedVariable/Q.Type, printedVariable/TemplateInline.Type, printedVariable/RubricBlock.Type, printedVariable/RubricBlockTemplateBlock.Type, printedVariable/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="identifier.PrintedVariable.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.193 "identifier.ResponseDeclaration.Attr" Attribute Group Description

The XSD description for the "identifier.ResponseDeclaration.Attr" Attribute Group is given in Table 4.3.193.

Table 4.3.193 XSD description for the "identifier.ResponseDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ResponseDeclaration.Type
Elements | responseDeclaration/AssessmentItem.Type
Source |
    <xs:attributeGroup name="identifier.ResponseDeclaration.Attr">
        <xs:attribute name="identifier" use="required" type="UniqueIdentifier.Type" />
    </xs:attributeGroup>

### 4.3.194 "identifier.RubricBlockTemplateBlock.Attr" Attribute Group Description

The XSD description for the "identifier.RubricBlockTemplateBlock.Attr" Attribute Group is given in Table 4.3.194.

Table 4.3.194 XSD description for the "identifier.RubricBlockTemplateBlock.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | RubricBlockTemplateBlock.Type
Elements | templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type
Source |
    <xs:attributeGroup name="identifier.RubricBlockTemplateBlock.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.195 "identifier.RubricBlockTemplateInline.Attr" Attribute Group Description

The XSD description for the "identifier.RubricBlockTemplateInline.Attr" Attribute Group is given in Table 4.3.195.

Table 4.3.195 XSD description for the "identifier.RubricBlockTemplateInline.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | RubricBlockTemplateInline.Type
Elements | templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="identifier.RubricBlockTemplateInline.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.196 "identifier.SetValue.Attr" Attribute Group Description

The XSD description for the "identifier.SetValue.Attr" Attribute Group is given in Table 4.3.196.

Table 4.3.196 XSD description for the "identifier.SetValue.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SetValue.Type
Elements | setOutcomeValue/OutcomeElse.Type, setOutcomeValue/OutcomeIf.Type, setOutcomeValue/OutcomeProcessing.Type, setOutcomeValue/OutcomeProcessingFragment.Type, setOutcomeValue/ResponseElse.Type, setOutcomeValue/ResponseIf.Type, setOutcomeValue/ResponseProcessing.Type, setOutcomeValue/ResponseProcessingFragment.Type, setTemplateValue/TemplateElse.Type, setTemplateValue/TemplateIf.Type, setTemplateValue/TemplateProcessing.Type, setDefaultValue/TemplateElse.Type, setDefaultValue/TemplateIf.Type, setDefaultValue/TemplateProcessing.Type, setCorrectResponse/TemplateElse.Type, setCorrectResponse/TemplateIf.Type, setCorrectResponse/TemplateProcessing.Type
Source |
    <xs:attributeGroup name="identifier.SetValue.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.197 "identifier.SimpleAssociableChoice.Attr" Attribute Group Description

The XSD description for the "identifier.SimpleAssociableChoice.Attr" Attribute Group is given in Table 4.3.197.

Table 4.3.197 XSD description for the "identifier.SimpleAssociableChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SimpleAssociableChoice.Type
Elements | simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type
Source |
    <xs:attributeGroup name="identifier.SimpleAssociableChoice.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.198 "identifier.SimpleChoice.Attr" Attribute Group Description

The XSD description for the "identifier.SimpleChoice.Attr" Attribute Group is given in Table 4.3.198.

Table 4.3.198 XSD description for the "identifier.SimpleChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SimpleChoice.Type
Elements | simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type
Source |
    <xs:attributeGroup name="identifier.SimpleChoice.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.199 "identifier.TemplateBlock.Attr" Attribute Group Description

The XSD description for the "identifier.TemplateBlock.Attr" Attribute Group is given in Table 4.3.199.

Table 4.3.199 XSD description for the "identifier.TemplateBlock.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TemplateBlock.Type
Elements | templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type
Source |
    <xs:attributeGroup name="identifier.TemplateBlock.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.200 "identifier.TemplateBlockFeedbackBlock.Attr" Attribute Group Description

The XSD description for the "identifier.TemplateBlockFeedbackBlock.Attr" Attribute Group is given in Table 4.3.200.

Table 4.3.200 XSD description for the "identifier.TemplateBlockFeedbackBlock.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TemplateBlockFeedbackBlock.Type
Elements | feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type
Source |
    <xs:attributeGroup name="identifier.TemplateBlockFeedbackBlock.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.201 "identifier.TemplateDeclaration.Attr" Attribute Group Description

The XSD description for the "identifier.TemplateDeclaration.Attr" Attribute Group is given in Table 4.3.201.

Table 4.3.201 XSD description for the "identifier.TemplateDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TemplateDeclaration.Type
Elements | templateDeclaration/AssessmentItem.Type
Source |
    <xs:attributeGroup name="identifier.TemplateDeclaration.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.202 "identifier.TemplateInline.Attr" Attribute Group Description

The XSD description for the "identifier.TemplateInline.Attr" Attribute Group is given in Table 4.3.202.

Table 4.3.202 XSD description for the "identifier.TemplateInline.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TemplateInline.Type
Elements | templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type
Source |
    <xs:attributeGroup name="identifier.TemplateInline.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.203 "identifier.TestFeedback.Attr" Attribute Group Description

The XSD description for the "identifier.TestFeedback.Attr" Attribute Group is given in Table 4.3.203.

Table 4.3.203 XSD description for the "identifier.TestFeedback.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TestFeedback.Type
Elements | testFeedback/AssessmentTest.Type, testFeedback/TestPart.Type
Source |
    <xs:attributeGroup name="identifier.TestFeedback.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.204 "identifier.TestPart.Attr" Attribute Group Description

The XSD description for the "identifier.TestPart.Attr" Attribute Group is given in Table 4.3.204.

Table 4.3.204 XSD description for the "identifier.TestPart.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TestPart.Type
Elements | testPart/AssessmentTest.Type
Source |
    <xs:attributeGroup name="identifier.TestPart.Attr">
        <xs:attribute name="identifier" use="required" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.205 "identifier.Variable.Attr" Attribute Group Description

The XSD description for the "identifier.Variable.Attr" Attribute Group is given in Table 4.3.205.

Table 4.3.205 XSD description for the "identifier.Variable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Variable.Type
Elements | variable/AnyN.Type, variable/BranchRule.Type, variable/CustomOperator.Type, variable/Equal.Type, variable/EqualRounded.Type, variable/FieldValue.Type, variable/Index.Type, variable/Inside.Type, variable/Logic0toMany.Type, variable/Logic1toMany.Type, variable/LogicPair.Type, variable/LogicSingle.Type, variable/LookupOutcomeValue.Type, variable/MathOperator.Type, variable/OutcomeIf.Type, variable/PatternMatch.Type, variable/Repeat.Type, variable/ResponseIf.Type, variable/RoundTo.Type, variable/SetValue.Type, variable/StatsOperator.Type, variable/StringMatch.Type, variable/Substring.Type, variable/TemplateConstraint.Type, variable/TemplateDefault.Type, variable/TemplateIf.Type, variable/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="identifier.Variable.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.206 "identifier.Weight.Attr" Attribute Group Description

The XSD description for the "identifier.Weight.Attr" Attribute Group is given in Table 4.3.206.

Table 4.3.206 XSD description for the "identifier.Weight.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Weight.Type
Elements | weight/AssessmentItemRef.Type
Source |
    <xs:attributeGroup name="identifier.Weight.Attr">
        <xs:attribute name="identifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.207 "includeBoundary.InterpolationTableEntry.Attr" Attribute Group Description

The XSD description for the "includeBoundary.InterpolationTableEntry.Attr" Attribute Group is given in Table 4.3.207.

Table 4.3.207 XSD description for the "includeBoundary.InterpolationTableEntry.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | InterpolationTableEntry.Type
Elements | interpolationTableEntry/InterpolationTable.Type
Source |
    <xs:attributeGroup name="includeBoundary.InterpolationTableEntry.Attr">
        <xs:attribute name="includeBoundary" use="optional" default="true" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.208 "includeCategory.Number.Attr" Attribute Group Description

The XSD description for the "includeCategory.Number.Attr" Attribute Group is given in Table 4.3.208.

Table 4.3.208 XSD description for the "includeCategory.Number.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Number.Type
Elements | numberIncorrect/AnyN.Type, numberIncorrect/BranchRule.Type, numberIncorrect/CustomOperator.Type, numberIncorrect/Equal.Type, numberIncorrect/EqualRounded.Type, numberIncorrect/FieldValue.Type, numberIncorrect/Index.Type, numberIncorrect/Inside.Type, numberIncorrect/Logic0toMany.Type, numberIncorrect/Logic1toMany.Type, numberIncorrect/LogicPair.Type, numberIncorrect/LogicSingle.Type, numberIncorrect/LookupOutcomeValue.Type, numberIncorrect/MathOperator.Type, numberIncorrect/OutcomeIf.Type, numberIncorrect/PatternMatch.Type, numberIncorrect/Repeat.Type, numberIncorrect/ResponseIf.Type, numberIncorrect/RoundTo.Type, numberIncorrect/SetValue.Type, numberIncorrect/StatsOperator.Type, numberIncorrect/StringMatch.Type, numberIncorrect/Substring.Type, numberIncorrect/TemplateConstraint.Type, numberIncorrect/TemplateDefault.Type, numberIncorrect/TemplateIf.Type, numberCorrect/AnyN.Type, numberCorrect/BranchRule.Type, numberCorrect/CustomOperator.Type, numberCorrect/Equal.Type, numberCorrect/EqualRounded.Type, numberCorrect/FieldValue.Type, numberCorrect/Index.Type, numberCorrect/Inside.Type, numberCorrect/Logic0toMany.Type, numberCorrect/Logic1toMany.Type, numberCorrect/LogicPair.Type, numberCorrect/LogicSingle.Type, numberCorrect/LookupOutcomeValue.Type, numberCorrect/MathOperator.Type, numberCorrect/OutcomeIf.Type, numberCorrect/PatternMatch.Type, numberCorrect/Repeat.Type, numberCorrect/ResponseIf.Type, numberCorrect/RoundTo.Type, numberCorrect/SetValue.Type, numberCorrect/StatsOperator.Type, numberCorrect/StringMatch.Type, numberCorrect/Substring.Type, numberCorrect/TemplateConstraint.Type, numberCorrect/TemplateDefault.Type, numberCorrect/TemplateIf.Type, numberPresented/AnyN.Type, numberPresented/BranchRule.Type, numberPresented/CustomOperator.Type, numberPresented/Equal.Type, numberPresented/EqualRounded.Type, numberPresented/FieldValue.Type, numberPresented/Index.Type, numberPresented/Inside.Type, numberPresented/Logic0toMany.Type, numberPresented/Logic1toMany.Type, numberPresented/LogicPair.Type, numberPresented/LogicSingle.Type, numberPresented/LookupOutcomeValue.Type, numberPresented/MathOperator.Type, numberPresented/OutcomeIf.Type, numberPresented/PatternMatch.Type, numberPresented/Repeat.Type, numberPresented/ResponseIf.Type, numberPresented/RoundTo.Type, numberPresented/SetValue.Type, numberPresented/StatsOperator.Type, numberPresented/StringMatch.Type, numberPresented/Substring.Type, numberPresented/TemplateConstraint.Type, numberPresented/TemplateDefault.Type, numberPresented/TemplateIf.Type, numberResponded/AnyN.Type, numberResponded/BranchRule.Type, numberResponded/CustomOperator.Type, numberResponded/Equal.Type, numberResponded/EqualRounded.Type, numberResponded/FieldValue.Type, numberResponded/Index.Type, numberResponded/Inside.Type, numberResponded/Logic0toMany.Type, numberResponded/Logic1toMany.Type, numberResponded/LogicPair.Type, numberResponded/LogicSingle.Type, numberResponded/LookupOutcomeValue.Type, numberResponded/MathOperator.Type, numberResponded/OutcomeIf.Type, numberResponded/PatternMatch.Type, numberResponded/Repeat.Type, numberResponded/ResponseIf.Type, numberResponded/RoundTo.Type, numberResponded/SetValue.Type, numberResponded/StatsOperator.Type, numberResponded/StringMatch.Type, numberResponded/Substring.Type, numberResponded/TemplateConstraint.Type, numberResponded/TemplateDefault.Type, numberResponded/TemplateIf.Type, numberSelected/AnyN.Type, numberSelected/BranchRule.Type, numberSelected/CustomOperator.Type, numberSelected/Equal.Type, numberSelected/EqualRounded.Type, numberSelected/FieldValue.Type, numberSelected/Index.Type, numberSelected/Inside.Type, numberSelected/Logic0toMany.Type, numberSelected/Logic1toMany.Type, numberSelected/LogicPair.Type, numberSelected/LogicSingle.Type, numberSelected/LookupOutcomeValue.Type, numberSelected/MathOperator.Type, numberSelected/OutcomeIf.Type, numberSelected/PatternMatch.Type, numberSelected/Repeat.Type, numberSelected/ResponseIf.Type, numberSelected/RoundTo.Type, numberSelected/SetValue.Type, numberSelected/StatsOperator.Type, numberSelected/StringMatch.Type, numberSelected/Substring.Type, numberSelected/TemplateConstraint.Type, numberSelected/TemplateDefault.Type, numberSelected/TemplateIf.Type, numberIncorrect/NumericLogic1toMany.Type, numberCorrect/NumericLogic1toMany.Type, numberPresented/NumericLogic1toMany.Type, numberResponded/NumericLogic1toMany.Type, numberSelected/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="includeCategory.Number.Attr">
        <xs:attribute name="includeCategory" use="optional">
            <xs:simpleType>
                <xs:list itemType="IdentifierList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.209 "includeCategory.OutcomeMinMax.Attr" Attribute Group Description

The XSD description for the "includeCategory.OutcomeMinMax.Attr" Attribute Group is given in Table 4.3.209.

Table 4.3.209 XSD description for the "includeCategory.OutcomeMinMax.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | OutcomeMinMax.Type
Elements | outcomeMinimum/AnyN.Type, outcomeMinimum/BranchRule.Type, outcomeMinimum/CustomOperator.Type, outcomeMinimum/Equal.Type, outcomeMinimum/EqualRounded.Type, outcomeMinimum/FieldValue.Type, outcomeMinimum/Index.Type, outcomeMinimum/Inside.Type, outcomeMinimum/Logic0toMany.Type, outcomeMinimum/Logic1toMany.Type, outcomeMinimum/LogicPair.Type, outcomeMinimum/LogicSingle.Type, outcomeMinimum/LookupOutcomeValue.Type, outcomeMinimum/MathOperator.Type, outcomeMinimum/OutcomeIf.Type, outcomeMinimum/PatternMatch.Type, outcomeMinimum/Repeat.Type, outcomeMinimum/ResponseIf.Type, outcomeMinimum/RoundTo.Type, outcomeMinimum/SetValue.Type, outcomeMinimum/StatsOperator.Type, outcomeMinimum/StringMatch.Type, outcomeMinimum/Substring.Type, outcomeMinimum/TemplateConstraint.Type, outcomeMinimum/TemplateDefault.Type, outcomeMinimum/TemplateIf.Type, outcomeMaximum/AnyN.Type, outcomeMaximum/BranchRule.Type, outcomeMaximum/CustomOperator.Type, outcomeMaximum/Equal.Type, outcomeMaximum/EqualRounded.Type, outcomeMaximum/FieldValue.Type, outcomeMaximum/Index.Type, outcomeMaximum/Inside.Type, outcomeMaximum/Logic0toMany.Type, outcomeMaximum/Logic1toMany.Type, outcomeMaximum/LogicPair.Type, outcomeMaximum/LogicSingle.Type, outcomeMaximum/LookupOutcomeValue.Type, outcomeMaximum/MathOperator.Type, outcomeMaximum/OutcomeIf.Type, outcomeMaximum/PatternMatch.Type, outcomeMaximum/Repeat.Type, outcomeMaximum/ResponseIf.Type, outcomeMaximum/RoundTo.Type, outcomeMaximum/SetValue.Type, outcomeMaximum/StatsOperator.Type, outcomeMaximum/StringMatch.Type, outcomeMaximum/Substring.Type, outcomeMaximum/TemplateConstraint.Type, outcomeMaximum/TemplateDefault.Type, outcomeMaximum/TemplateIf.Type, outcomeMinimum/NumericLogic1toMany.Type, outcomeMaximum/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="includeCategory.OutcomeMinMax.Attr">
        <xs:attribute name="includeCategory" use="optional">
            <xs:simpleType>
                <xs:list itemType="IdentifierList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.210 "includeCategory.TestVariables.Attr" Attribute Group Description

The XSD description for the "includeCategory.TestVariables.Attr" Attribute Group is given in Table 4.3.210.

Table 4.3.210 XSD description for the "includeCategory.TestVariables.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TestVariables.Type
Elements | testVariables/AnyN.Type, testVariables/BranchRule.Type, testVariables/CustomOperator.Type, testVariables/Equal.Type, testVariables/EqualRounded.Type, testVariables/FieldValue.Type, testVariables/Index.Type, testVariables/Inside.Type, testVariables/Logic0toMany.Type, testVariables/Logic1toMany.Type, testVariables/LogicPair.Type, testVariables/LogicSingle.Type, testVariables/LookupOutcomeValue.Type, testVariables/MathOperator.Type, testVariables/OutcomeIf.Type, testVariables/PatternMatch.Type, testVariables/Repeat.Type, testVariables/ResponseIf.Type, testVariables/RoundTo.Type, testVariables/SetValue.Type, testVariables/StatsOperator.Type, testVariables/StringMatch.Type, testVariables/Substring.Type, testVariables/TemplateConstraint.Type, testVariables/TemplateDefault.Type, testVariables/TemplateIf.Type, testVariables/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="includeCategory.TestVariables.Attr">
        <xs:attribute name="includeCategory" use="optional">
            <xs:simpleType>
                <xs:list itemType="IdentifierList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.211 "includeLowerBound.Equal.Attr" Attribute Group Description

The XSD description for the "includeLowerBound.Equal.Attr" Attribute Group is given in Table 4.3.211.

Table 4.3.211 XSD description for the "includeLowerBound.Equal.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Equal.Type
Elements | equal/AnyN.Type, equal/BranchRule.Type, equal/CustomOperator.Type, equal/Equal.Type, equal/EqualRounded.Type, equal/FieldValue.Type, equal/Index.Type, equal/Inside.Type, equal/Logic0toMany.Type, equal/Logic1toMany.Type, equal/LogicPair.Type, equal/LogicSingle.Type, equal/LookupOutcomeValue.Type, equal/MathOperator.Type, equal/OutcomeIf.Type, equal/PatternMatch.Type, equal/Repeat.Type, equal/ResponseIf.Type, equal/RoundTo.Type, equal/SetValue.Type, equal/StatsOperator.Type, equal/StringMatch.Type, equal/Substring.Type, equal/TemplateConstraint.Type, equal/TemplateDefault.Type, equal/TemplateIf.Type
Source |
    <xs:attributeGroup name="includeLowerBound.Equal.Attr">
        <xs:attribute name="includeLowerBound" use="optional" default="true" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.212 "includeUpperBound.Equal.Attr" Attribute Group Description

The XSD description for the "includeUpperBound.Equal.Attr" Attribute Group is given in Table 4.3.212.

Table 4.3.212 XSD description for the "includeUpperBound.Equal.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Equal.Type
Elements | equal/AnyN.Type, equal/BranchRule.Type, equal/CustomOperator.Type, equal/Equal.Type, equal/EqualRounded.Type, equal/FieldValue.Type, equal/Index.Type, equal/Inside.Type, equal/Logic0toMany.Type, equal/Logic1toMany.Type, equal/LogicPair.Type, equal/LogicSingle.Type, equal/LookupOutcomeValue.Type, equal/MathOperator.Type, equal/OutcomeIf.Type, equal/PatternMatch.Type, equal/Repeat.Type, equal/ResponseIf.Type, equal/RoundTo.Type, equal/SetValue.Type, equal/StatsOperator.Type, equal/StringMatch.Type, equal/Substring.Type, equal/TemplateConstraint.Type, equal/TemplateDefault.Type, equal/TemplateIf.Type
Source |
    <xs:attributeGroup name="includeUpperBound.Equal.Attr">
        <xs:attribute name="includeUpperBound" use="optional" default="true" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.213 "index.PrintedVariable.Attr" Attribute Group Description

The XSD description for the "index.PrintedVariable.Attr" Attribute Group is given in Table 4.3.213.

Table 4.3.213 XSD description for the "index.PrintedVariable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PrintedVariable.Type
Elements | printedVariable/TemplateBlock.Type, printedVariable/TemplateBlockFeedbackBlock.Type, printedVariable/FeedbackBlock.Type, printedVariable/ModalFeedback.Type, printedVariable/TestFeedback.Type, printedVariable/FeedbackInline.Type, printedVariable/DD.Type, printedVariable/Div.Type, printedVariable/LI.Type, printedVariable/TDH.Type, printedVariable/InfoControl.Type, printedVariable/SimpleAssociableChoice.Type, printedVariable/SimpleChoice.Type, printedVariable/GapText.Type, printedVariable/HotText.Type, printedVariable/InlineChoice.Type, printedVariable/Label.Type, printedVariable/A.Type, printedVariable/Caption.Type, printedVariable/DT.Type, printedVariable/HTMLText.Type, printedVariable/Q.Type, printedVariable/TemplateInline.Type, printedVariable/RubricBlock.Type, printedVariable/RubricBlockTemplateBlock.Type, printedVariable/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="index.PrintedVariable.Attr">
        <xs:attribute name="index" use="optional">
            <xs:simpleType>
                <xs:union>
                    <xs:simpleType>
                        <xs:restriction base="xs:integer" />
                    </xs:simpleType>
                    <xs:simpleType>
                        <xs:restriction base="VariableString.Type" />
                    </xs:simpleType>
                </xs:union>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.214 "interpretation.CorrectResponse.Attr" Attribute Group Description

The XSD description for the "interpretation.CorrectResponse.Attr" Attribute Group is given in Table 4.3.214.

Table 4.3.214 XSD description for the "interpretation.CorrectResponse.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | CorrectResponse.Type
Elements | correctResponse/ResponseDeclaration.Type
Source |
    <xs:attributeGroup name="interpretation.CorrectResponse.Attr">
        <xs:attribute name="interpretation" use="optional" type="xs:string" />
    </xs:attributeGroup>

### 4.3.215 "interpretation.DefaultValue.Attr" Attribute Group Description

The XSD description for the "interpretation.DefaultValue.Attr" Attribute Group is given in Table 4.3.215.

Table 4.3.215 XSD description for the "interpretation.DefaultValue.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | DefaultValue.Type
Elements | defaultValue/OutcomeDeclaration.Type, defaultValue/ResponseDeclaration.Type, defaultValue/TemplateDeclaration.Type
Source |
    <xs:attributeGroup name="interpretation.DefaultValue.Attr">
        <xs:attribute name="interpretation" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.216 "interpretation.OutcomeDeclaration.Attr" Attribute Group Description

The XSD description for the "interpretation.OutcomeDeclaration.Attr" Attribute Group is given in Table 4.3.216.

Table 4.3.216 XSD description for the "interpretation.OutcomeDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | outcomeDeclaration
ComplexTypes | OutcomeDeclaration.Type
Source |
    <xs:attributeGroup name="interpretation.OutcomeDeclaration.Attr">
        <xs:attribute name="interpretation" use="optional" type="xs:string" />
    </xs:attributeGroup>

### 4.3.217 "keepTogether.AssessmentSection.Attr" Attribute Group Description

The XSD description for the "keepTogether.AssessmentSection.Attr" Attribute Group is given in Table 4.3.217.

Table 4.3.217 XSD description for the "keepTogether.AssessmentSection.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentSection
ComplexTypes | AssessmentSection.Type
Source |
    <xs:attributeGroup name="keepTogether.AssessmentSection.Attr">
        <xs:attribute name="keepTogether" use="optional" default="true" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.218 "label.AssessmentItem.Attr" Attribute Group Description

The XSD description for the "label.AssessmentItem.Attr" Attribute Group is given in Table 4.3.218.

Table 4.3.218 XSD description for the "label.AssessmentItem.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentItem
ComplexTypes | AssessmentItem.Type
Source |
    <xs:attributeGroup name="label.AssessmentItem.Attr">
        <xs:attribute name="label" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.219 "label.AssessmentStimulus.Attr" Attribute Group Description

The XSD description for the "label.AssessmentStimulus.Attr" Attribute Group is given in Table 4.3.219.

Table 4.3.219 XSD description for the "label.AssessmentStimulus.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentStimulus
ComplexTypes | AssessmentStimulus.Type
Source |
    <xs:attributeGroup name="label.AssessmentStimulus.Attr">
        <xs:attribute name="label" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.220 "label.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "label.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.220.

Table 4.3.220 XSD description for the "label.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="label.BasePromptInteraction.Attr">
        <xs:attribute name="label" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.221 "label.BaseSequence.Attr" Attribute Group Description

The XSD description for the "label.BaseSequence.Attr" Attribute Group is given in Table 4.3.221.

Table 4.3.221 XSD description for the "label.BaseSequence.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequence.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type, caption/Table.Type, colgroup/Table.Type, gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type, gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type, infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type, inlineChoice/InlineChoiceInteraction.Type, li/OUL.Type, prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type, simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type, simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type, stimulusBody/AssessmentStimulus.Type, tbody/Table.Type, td/TR.Type, tfoot/Table.Type, th/TR.Type, thead/Table.Type, tr/TablePart.Type
Source |
    <xs:attributeGroup name="label.BaseSequence.Attr">
        <xs:attribute name="label" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.222 "label.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "label.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.222.

Table 4.3.222 XSD description for the "label.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="label.BaseSequenceFull.Attr">
        <xs:attribute name="label" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.223 "label.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "label.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.223.

Table 4.3.223 XSD description for the "label.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="label.BaseSequenceRIdent.Attr">
        <xs:attribute name="label" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.224 "label.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "label.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.224.

Table 4.3.224 XSD description for the "label.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="label.BaseSequenceXBase.Attr">
        <xs:attribute name="label" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.225 "label.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "label.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.225.

Table 4.3.225 XSD description for the "label.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="label.BaseSequenceXBaseEmpty.Attr">
        <xs:attribute name="label" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.226 "label.ItemBody.Attr" Attribute Group Description

The XSD description for the "label.ItemBody.Attr" Attribute Group is given in Table 4.3.226.

Table 4.3.226 XSD description for the "label.ItemBody.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ItemBody.Type
Elements | itemBody/AssessmentItem.Type
Source |
    <xs:attributeGroup name="label.ItemBody.Attr">
        <xs:attribute name="label" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.227 "label.PrintedVariable.Attr" Attribute Group Description

The XSD description for the "label.PrintedVariable.Attr" Attribute Group is given in Table 4.3.227.

Table 4.3.227 XSD description for the "label.PrintedVariable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PrintedVariable.Type
Elements | printedVariable/TemplateBlock.Type, printedVariable/TemplateBlockFeedbackBlock.Type, printedVariable/FeedbackBlock.Type, printedVariable/ModalFeedback.Type, printedVariable/TestFeedback.Type, printedVariable/FeedbackInline.Type, printedVariable/DD.Type, printedVariable/Div.Type, printedVariable/LI.Type, printedVariable/TDH.Type, printedVariable/InfoControl.Type, printedVariable/SimpleAssociableChoice.Type, printedVariable/SimpleChoice.Type, printedVariable/GapText.Type, printedVariable/HotText.Type, printedVariable/InlineChoice.Type, printedVariable/Label.Type, printedVariable/A.Type, printedVariable/Caption.Type, printedVariable/DT.Type, printedVariable/HTMLText.Type, printedVariable/Q.Type, printedVariable/TemplateInline.Type, printedVariable/RubricBlock.Type, printedVariable/RubricBlockTemplateBlock.Type, printedVariable/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="label.PrintedVariable.Attr">
        <xs:attribute name="label" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.228 "language.AssessmentItem.Attr" Attribute Group Description

The XSD description for the "language.AssessmentItem.Attr" Attribute Group is given in Table 4.3.228.

Table 4.3.228 XSD description for the "language.AssessmentItem.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentItem
ComplexTypes | AssessmentItem.Type
Source |
    <xs:attributeGroup name="language.AssessmentItem.Attr">
        <xs:attribute ref="xml:lang" use="optional" />
    </xs:attributeGroup>

### 4.3.229 "language.AssessmentStimulus.Attr" Attribute Group Description

The XSD description for the "language.AssessmentStimulus.Attr" Attribute Group is given in Table 4.3.229.

Table 4.3.229 XSD description for the "language.AssessmentStimulus.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentStimulus
ComplexTypes | AssessmentStimulus.Type
Source |
    <xs:attributeGroup name="language.AssessmentStimulus.Attr">
        <xs:attribute ref="xml:lang" use="optional" />
    </xs:attributeGroup>

### 4.3.230 "language.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "language.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.230.

Table 4.3.230 XSD description for the "language.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="language.BasePromptInteraction.Attr">
        <xs:attribute ref="xml:lang" use="optional" />
    </xs:attributeGroup>

### 4.3.231 "language.BaseSequence.Attr" Attribute Group Description

The XSD description for the "language.BaseSequence.Attr" Attribute Group is given in Table 4.3.231.

Table 4.3.231 XSD description for the "language.BaseSequence.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequence.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type, caption/Table.Type, colgroup/Table.Type, gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type, gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type, infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type, inlineChoice/InlineChoiceInteraction.Type, li/OUL.Type, prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type, simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type, simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type, stimulusBody/AssessmentStimulus.Type, tbody/Table.Type, td/TR.Type, tfoot/Table.Type, th/TR.Type, thead/Table.Type, tr/TablePart.Type
Source |
    <xs:attributeGroup name="language.BaseSequence.Attr">
        <xs:attribute ref="xml:lang" use="optional" />
    </xs:attributeGroup>

### 4.3.232 "language.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "language.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.232.

Table 4.3.232 XSD description for the "language.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="language.BaseSequenceFull.Attr">
        <xs:attribute ref="xml:lang" use="optional" />
    </xs:attributeGroup>

### 4.3.233 "language.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "language.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.233.

Table 4.3.233 XSD description for the "language.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="language.BaseSequenceRIdent.Attr">
        <xs:attribute ref="xml:lang" use="optional" />
    </xs:attributeGroup>

### 4.3.234 "language.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "language.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.234.

Table 4.3.234 XSD description for the "language.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="language.BaseSequenceXBase.Attr">
        <xs:attribute ref="xml:lang" use="optional" />
    </xs:attributeGroup>

### 4.3.235 "language.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "language.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.235.

Table 4.3.235 XSD description for the "language.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="language.BaseSequenceXBaseEmpty.Attr">
        <xs:attribute ref="xml:lang" use="optional" />
    </xs:attributeGroup>

### 4.3.236 "language.ItemBody.Attr" Attribute Group Description

The XSD description for the "language.ItemBody.Attr" Attribute Group is given in Table 4.3.236.

Table 4.3.236 XSD description for the "language.ItemBody.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ItemBody.Type
Elements | itemBody/AssessmentItem.Type
Source |
    <xs:attributeGroup name="language.ItemBody.Attr">
        <xs:attribute ref="xml:lang" use="optional" />
    </xs:attributeGroup>

### 4.3.237 "language.PrintedVariable.Attr" Attribute Group Description

The XSD description for the "language.PrintedVariable.Attr" Attribute Group is given in Table 4.3.237.

Table 4.3.237 XSD description for the "language.PrintedVariable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PrintedVariable.Type
Elements | printedVariable/TemplateBlock.Type, printedVariable/TemplateBlockFeedbackBlock.Type, printedVariable/FeedbackBlock.Type, printedVariable/ModalFeedback.Type, printedVariable/TestFeedback.Type, printedVariable/FeedbackInline.Type, printedVariable/DD.Type, printedVariable/Div.Type, printedVariable/LI.Type, printedVariable/TDH.Type, printedVariable/InfoControl.Type, printedVariable/SimpleAssociableChoice.Type, printedVariable/SimpleChoice.Type, printedVariable/GapText.Type, printedVariable/HotText.Type, printedVariable/InlineChoice.Type, printedVariable/Label.Type, printedVariable/A.Type, printedVariable/Caption.Type, printedVariable/DT.Type, printedVariable/HTMLText.Type, printedVariable/Q.Type, printedVariable/TemplateInline.Type, printedVariable/RubricBlock.Type, printedVariable/RubricBlockTemplateBlock.Type, printedVariable/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="language.PrintedVariable.Attr">
        <xs:attribute ref="xml:lang" use="optional" />
    </xs:attributeGroup>

### 4.3.238 "left.GapImg.Attr" Attribute Group Description

The XSD description for the "left.GapImg.Attr" Attribute Group is given in Table 4.3.238.

Table 4.3.238 XSD description for the "left.GapImg.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapImg.Type
Elements | gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="left.GapImg.Attr">
        <xs:attribute name="left" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.239 "longdesc.Img.Attr" Attribute Group Description

The XSD description for the "longdesc.Img.Attr" Attribute Group is given in Table 4.3.239.

Table 4.3.239 XSD description for the "longdesc.Img.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Img.Type
Elements | img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="longdesc.Img.Attr">
        <xs:attribute name="longdesc" use="optional" type="xs:anyURI" />
    </xs:attributeGroup>

### 4.3.240 "longInterpretation.OutcomeDeclaration.Attr" Attribute Group Description

The XSD description for the "longInterpretation.OutcomeDeclaration.Attr" Attribute Group is given in Table 4.3.240.

Table 4.3.240 XSD description for the "longInterpretation.OutcomeDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | outcomeDeclaration
ComplexTypes | OutcomeDeclaration.Type
Source |
    <xs:attributeGroup name="longInterpretation.OutcomeDeclaration.Attr">
        <xs:attribute name="longInterpretation" use="optional" type="xs:anyURI" />
    </xs:attributeGroup>

### 4.3.241 "loop.MediaInteraction.Attr" Attribute Group Description

The XSD description for the "loop.MediaInteraction.Attr" Attribute Group is given in Table 4.3.241.

Table 4.3.241 XSD description for the "loop.MediaInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MediaInteraction.Type
Elements | mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type
Source |
    <xs:attributeGroup name="loop.MediaInteraction.Attr">
        <xs:attribute name="loop" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.242 "lowerBound.AreaMapping.Attr" Attribute Group Description

The XSD description for the "lowerBound.AreaMapping.Attr" Attribute Group is given in Table 4.3.242.

Table 4.3.242 XSD description for the "lowerBound.AreaMapping.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AreaMapping.Type
Elements | areaMapping/ResponseDeclaration.Type
Source |
    <xs:attributeGroup name="lowerBound.AreaMapping.Attr">
        <xs:attribute name="lowerBound" use="optional" type="xs:double" />
    </xs:attributeGroup>

### 4.3.243 "lowerBound.Mapping.Attr" Attribute Group Description

The XSD description for the "lowerBound.Mapping.Attr" Attribute Group is given in Table 4.3.243.

Table 4.3.243 XSD description for the "lowerBound.Mapping.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Mapping.Type
Elements | mapping/ResponseDeclaration.Type
Source |
    <xs:attributeGroup name="lowerBound.Mapping.Attr">
        <xs:attribute name="lowerBound" use="optional" type="xs:double" />
    </xs:attributeGroup>

### 4.3.244 "lowerBound.SliderInteraction.Attr" Attribute Group Description

The XSD description for the "lowerBound.SliderInteraction.Attr" Attribute Group is given in Table 4.3.244.

Table 4.3.244 XSD description for the "lowerBound.SliderInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SliderInteraction.Type
Elements | sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type
Source |
    <xs:attributeGroup name="lowerBound.SliderInteraction.Attr">
        <xs:attribute name="lowerBound" use="required" type="NonNegativeDouble.Type" />
    </xs:attributeGroup>

### 4.3.245 "mapKey.MapEntry.Attr" Attribute Group Description

The XSD description for the "mapKey.MapEntry.Attr" Attribute Group is given in Table 4.3.245.

Table 4.3.245 XSD description for the "mapKey.MapEntry.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MapEntry.Type
Elements | mapEntry/Mapping.Type
Source |
    <xs:attributeGroup name="mapKey.MapEntry.Attr">
        <xs:attribute name="mapKey" use="required" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.246 "mappedValue.AreaMapEntry.Attr" Attribute Group Description

The XSD description for the "mappedValue.AreaMapEntry.Attr" Attribute Group is given in Table 4.3.246.

Table 4.3.246 XSD description for the "mappedValue.AreaMapEntry.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AreaMapEntry.Type
Elements | areaMapEntry/AreaMapping.Type
Source |
    <xs:attributeGroup name="mappedValue.AreaMapEntry.Attr">
        <xs:attribute name="mappedValue" use="required" type="xs:double" />
    </xs:attributeGroup>

### 4.3.247 "mappedValue.MapEntry.Attr" Attribute Group Description

The XSD description for the "mappedValue.MapEntry.Attr" Attribute Group is given in Table 4.3.247.

Table 4.3.247 XSD description for the "mappedValue.MapEntry.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MapEntry.Type
Elements | mapEntry/Mapping.Type
Source |
    <xs:attributeGroup name="mappedValue.MapEntry.Attr">
        <xs:attribute name="mappedValue" use="required" type="xs:double" />
    </xs:attributeGroup>

### 4.3.248 "mappingIndicator.PrintedVariable.Attr" Attribute Group Description

The XSD description for the "mappingIndicator.PrintedVariable.Attr" Attribute Group is given in Table 4.3.248.

Table 4.3.248 XSD description for the "mappingIndicator.PrintedVariable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PrintedVariable.Type
Elements | printedVariable/TemplateBlock.Type, printedVariable/TemplateBlockFeedbackBlock.Type, printedVariable/FeedbackBlock.Type, printedVariable/ModalFeedback.Type, printedVariable/TestFeedback.Type, printedVariable/FeedbackInline.Type, printedVariable/DD.Type, printedVariable/Div.Type, printedVariable/LI.Type, printedVariable/TDH.Type, printedVariable/InfoControl.Type, printedVariable/SimpleAssociableChoice.Type, printedVariable/SimpleChoice.Type, printedVariable/GapText.Type, printedVariable/HotText.Type, printedVariable/InlineChoice.Type, printedVariable/Label.Type, printedVariable/A.Type, printedVariable/Caption.Type, printedVariable/DT.Type, printedVariable/HTMLText.Type, printedVariable/Q.Type, printedVariable/TemplateInline.Type, printedVariable/RubricBlock.Type, printedVariable/RubricBlockTemplateBlock.Type, printedVariable/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="mappingIndicator.PrintedVariable.Attr">
        <xs:attribute name="mappingIndicator" use="optional" default="=" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.249 "masteryValue.OutcomeDeclaration.Attr" Attribute Group Description

The XSD description for the "masteryValue.OutcomeDeclaration.Attr" Attribute Group is given in Table 4.3.249.

Table 4.3.249 XSD description for the "masteryValue.OutcomeDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | outcomeDeclaration
ComplexTypes | OutcomeDeclaration.Type
Source |
    <xs:attributeGroup name="masteryValue.OutcomeDeclaration.Attr">
        <xs:attribute name="masteryValue" use="optional" type="xs:double" />
    </xs:attributeGroup>

### 4.3.250 "matchGroup.AssociableHotspot.Attr" Attribute Group Description

The XSD description for the "matchGroup.AssociableHotspot.Attr" Attribute Group is given in Table 4.3.250.

Table 4.3.250 XSD description for the "matchGroup.AssociableHotspot.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssociableHotspot.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="matchGroup.AssociableHotspot.Attr">
        <xs:attribute name="matchGroup" use="optional">
            <xs:simpleType>
                <xs:list itemType="IdentifierList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.251 "matchGroup.Gap.Attr" Attribute Group Description

The XSD description for the "matchGroup.Gap.Attr" Attribute Group is given in Table 4.3.251.

Table 4.3.251 XSD description for the "matchGroup.Gap.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Gap.Type
Elements | gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type
Source |
    <xs:attributeGroup name="matchGroup.Gap.Attr">
        <xs:attribute name="matchGroup" use="optional">
            <xs:simpleType>
                <xs:list itemType="IdentifierList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.252 "matchGroup.GapImg.Attr" Attribute Group Description

The XSD description for the "matchGroup.GapImg.Attr" Attribute Group is given in Table 4.3.252.

Table 4.3.252 XSD description for the "matchGroup.GapImg.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapImg.Type
Elements | gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="matchGroup.GapImg.Attr">
        <xs:attribute name="matchGroup" use="optional">
            <xs:simpleType>
                <xs:list itemType="IdentifierList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.253 "matchGroup.GapText.Attr" Attribute Group Description

The XSD description for the "matchGroup.GapText.Attr" Attribute Group is given in Table 4.3.253.

Table 4.3.253 XSD description for the "matchGroup.GapText.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapText.Type
Elements | gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="matchGroup.GapText.Attr">
        <xs:attribute name="matchGroup" use="optional">
            <xs:simpleType>
                <xs:list itemType="IdentifierList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.254 "matchGroup.SimpleAssociableChoice.Attr" Attribute Group Description

The XSD description for the "matchGroup.SimpleAssociableChoice.Attr" Attribute Group is given in Table 4.3.254.

Table 4.3.254 XSD description for the "matchGroup.SimpleAssociableChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SimpleAssociableChoice.Type
Elements | simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type
Source |
    <xs:attributeGroup name="matchGroup.SimpleAssociableChoice.Attr">
        <xs:attribute name="matchGroup" use="optional">
            <xs:simpleType>
                <xs:list itemType="IdentifierList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.255 "matchMax.AssociableHotspot.Attr" Attribute Group Description

The XSD description for the "matchMax.AssociableHotspot.Attr" Attribute Group is given in Table 4.3.255.

Table 4.3.255 XSD description for the "matchMax.AssociableHotspot.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssociableHotspot.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="matchMax.AssociableHotspot.Attr">
        <xs:attribute name="matchMax" use="required" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.256 "matchMax.GapImg.Attr" Attribute Group Description

The XSD description for the "matchMax.GapImg.Attr" Attribute Group is given in Table 4.3.256.

Table 4.3.256 XSD description for the "matchMax.GapImg.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapImg.Type
Elements | gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="matchMax.GapImg.Attr">
        <xs:attribute name="matchMax" use="required" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.257 "matchMax.GapText.Attr" Attribute Group Description

The XSD description for the "matchMax.GapText.Attr" Attribute Group is given in Table 4.3.257.

Table 4.3.257 XSD description for the "matchMax.GapText.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapText.Type
Elements | gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="matchMax.GapText.Attr">
        <xs:attribute name="matchMax" use="required" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.258 "matchMax.SimpleAssociableChoice.Attr" Attribute Group Description

The XSD description for the "matchMax.SimpleAssociableChoice.Attr" Attribute Group is given in Table 4.3.258.

Table 4.3.258 XSD description for the "matchMax.SimpleAssociableChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SimpleAssociableChoice.Type
Elements | simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type
Source |
    <xs:attributeGroup name="matchMax.SimpleAssociableChoice.Attr">
        <xs:attribute name="matchMax" use="required" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.259 "matchMin.AssociableHotspot.Attr" Attribute Group Description

The XSD description for the "matchMin.AssociableHotspot.Attr" Attribute Group is given in Table 4.3.259.

Table 4.3.259 XSD description for the "matchMin.AssociableHotspot.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssociableHotspot.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="matchMin.AssociableHotspot.Attr">
        <xs:attribute name="matchMin" use="optional" default="0" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.260 "matchMin.GapImg.Attr" Attribute Group Description

The XSD description for the "matchMin.GapImg.Attr" Attribute Group is given in Table 4.3.260.

Table 4.3.260 XSD description for the "matchMin.GapImg.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapImg.Type
Elements | gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="matchMin.GapImg.Attr">
        <xs:attribute name="matchMin" use="optional" default="0" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.261 "matchMin.GapText.Attr" Attribute Group Description

The XSD description for the "matchMin.GapText.Attr" Attribute Group is given in Table 4.3.261.

Table 4.3.261 XSD description for the "matchMin.GapText.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapText.Type
Elements | gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="matchMin.GapText.Attr">
        <xs:attribute name="matchMin" use="optional" default="0" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.262 "matchMin.SimpleAssociableChoice.Attr" Attribute Group Description

The XSD description for the "matchMin.SimpleAssociableChoice.Attr" Attribute Group is given in Table 4.3.262.

Table 4.3.262 XSD description for the "matchMin.SimpleAssociableChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SimpleAssociableChoice.Type
Elements | simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type
Source |
    <xs:attributeGroup name="matchMin.SimpleAssociableChoice.Attr">
        <xs:attribute name="matchMin" use="optional" default="0" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.263 "mathVariable.TemplateDeclaration.Attr" Attribute Group Description

The XSD description for the "mathVariable.TemplateDeclaration.Attr" Attribute Group is given in Table 4.3.263.

Table 4.3.263 XSD description for the "mathVariable.TemplateDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TemplateDeclaration.Type
Elements | templateDeclaration/AssessmentItem.Type
Source |
    <xs:attributeGroup name="mathVariable.TemplateDeclaration.Attr">
        <xs:attribute name="mathVariable" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.264 "max.AnyN.Attr" Attribute Group Description

The XSD description for the "max.AnyN.Attr" Attribute Group is given in Table 4.3.264.

Table 4.3.264 XSD description for the "max.AnyN.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AnyN.Type
Elements | anyN/AnyN.Type, anyN/BranchRule.Type, anyN/CustomOperator.Type, anyN/Equal.Type, anyN/EqualRounded.Type, anyN/FieldValue.Type, anyN/Index.Type, anyN/Inside.Type, anyN/Logic0toMany.Type, anyN/Logic1toMany.Type, anyN/LogicPair.Type, anyN/LogicSingle.Type, anyN/LookupOutcomeValue.Type, anyN/MathOperator.Type, anyN/OutcomeIf.Type, anyN/PatternMatch.Type, anyN/Repeat.Type, anyN/ResponseIf.Type, anyN/RoundTo.Type, anyN/SetValue.Type, anyN/StatsOperator.Type, anyN/StringMatch.Type, anyN/Substring.Type, anyN/TemplateConstraint.Type, anyN/TemplateDefault.Type, anyN/TemplateIf.Type
Source |
    <xs:attributeGroup name="max.AnyN.Attr">
        <xs:attribute name="max" use="required">
            <xs:simpleType>
                <xs:union>
                    <xs:simpleType>
                        <xs:restriction base="xs:integer" />
                    </xs:simpleType>
                    <xs:simpleType>
                        <xs:restriction base="VariableString.Type" />
                    </xs:simpleType>
                </xs:union>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.265 "max.RandomFloat.Attr" Attribute Group Description

The XSD description for the "max.RandomFloat.Attr" Attribute Group is given in Table 4.3.265.

Table 4.3.265 XSD description for the "max.RandomFloat.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | RandomFloat.Type
Elements | randomFloat/AnyN.Type, randomFloat/BranchRule.Type, randomFloat/CustomOperator.Type, randomFloat/Equal.Type, randomFloat/EqualRounded.Type, randomFloat/FieldValue.Type, randomFloat/Index.Type, randomFloat/Inside.Type, randomFloat/Logic0toMany.Type, randomFloat/Logic1toMany.Type, randomFloat/LogicPair.Type, randomFloat/LogicSingle.Type, randomFloat/LookupOutcomeValue.Type, randomFloat/MathOperator.Type, randomFloat/OutcomeIf.Type, randomFloat/PatternMatch.Type, randomFloat/Repeat.Type, randomFloat/ResponseIf.Type, randomFloat/RoundTo.Type, randomFloat/SetValue.Type, randomFloat/StatsOperator.Type, randomFloat/StringMatch.Type, randomFloat/Substring.Type, randomFloat/TemplateConstraint.Type, randomFloat/TemplateDefault.Type, randomFloat/TemplateIf.Type, randomFloat/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="max.RandomFloat.Attr">
        <xs:attribute name="max" use="required">
            <xs:simpleType>
                <xs:union>
                    <xs:simpleType>
                        <xs:restriction base="xs:double" />
                    </xs:simpleType>
                    <xs:simpleType>
                        <xs:restriction base="VariableString.Type" />
                    </xs:simpleType>
                </xs:union>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.266 "max.RandomInteger.Attr" Attribute Group Description

The XSD description for the "max.RandomInteger.Attr" Attribute Group is given in Table 4.3.266.

Table 4.3.266 XSD description for the "max.RandomInteger.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | RandomInteger.Type
Elements | randomInteger/AnyN.Type, randomInteger/BranchRule.Type, randomInteger/CustomOperator.Type, randomInteger/Equal.Type, randomInteger/EqualRounded.Type, randomInteger/FieldValue.Type, randomInteger/Index.Type, randomInteger/Inside.Type, randomInteger/Logic0toMany.Type, randomInteger/Logic1toMany.Type, randomInteger/LogicPair.Type, randomInteger/LogicSingle.Type, randomInteger/LookupOutcomeValue.Type, randomInteger/MathOperator.Type, randomInteger/OutcomeIf.Type, randomInteger/PatternMatch.Type, randomInteger/Repeat.Type, randomInteger/ResponseIf.Type, randomInteger/RoundTo.Type, randomInteger/SetValue.Type, randomInteger/StatsOperator.Type, randomInteger/StringMatch.Type, randomInteger/Substring.Type, randomInteger/TemplateConstraint.Type, randomInteger/TemplateDefault.Type, randomInteger/TemplateIf.Type, randomInteger/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="max.RandomInteger.Attr">
        <xs:attribute name="max" use="required">
            <xs:simpleType>
                <xs:union>
                    <xs:simpleType>
                        <xs:restriction base="xs:integer" />
                    </xs:simpleType>
                    <xs:simpleType>
                        <xs:restriction base="VariableString.Type" />
                    </xs:simpleType>
                </xs:union>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.267 "maxAssociations.AssociateInteraction.Attr" Attribute Group Description

The XSD description for the "maxAssociations.AssociateInteraction.Attr" Attribute Group is given in Table 4.3.267.

Table 4.3.267 XSD description for the "maxAssociations.AssociateInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssociateInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type
Source |
    <xs:attributeGroup name="maxAssociations.AssociateInteraction.Attr">
        <xs:attribute name="maxAssociations" use="optional" default="1" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.268 "maxAssociations.GapMatchInteraction.Attr" Attribute Group Description

The XSD description for the "maxAssociations.GapMatchInteraction.Attr" Attribute Group is given in Table 4.3.268.

Table 4.3.268 XSD description for the "maxAssociations.GapMatchInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapMatchInteraction.Type
Elements | gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type
Source |
    <xs:attributeGroup name="maxAssociations.GapMatchInteraction.Attr">
        <xs:attribute name="maxAssociations" use="optional" default="1" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.269 "maxAssociations.GraphicAssociateInteraction.Attr" Attribute Group Description

The XSD description for the "maxAssociations.GraphicAssociateInteraction.Attr" Attribute Group is given in Table 4.3.269.

Table 4.3.269 XSD description for the "maxAssociations.GraphicAssociateInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GraphicAssociateInteraction.Type
Elements | graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type
Source |
    <xs:attributeGroup name="maxAssociations.GraphicAssociateInteraction.Attr">
        <xs:attribute name="maxAssociations" use="optional" default="1" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.270 "maxAssociations.GraphicGapMatchInteraction.Attr" Attribute Group Description

The XSD description for the "maxAssociations.GraphicGapMatchInteraction.Attr" Attribute Group is given in Table 4.3.270.

Table 4.3.270 XSD description for the "maxAssociations.GraphicGapMatchInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GraphicGapMatchInteraction.Type
Elements | graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type
Source |
    <xs:attributeGroup name="maxAssociations.GraphicGapMatchInteraction.Attr">
        <xs:attribute name="maxAssociations" use="optional" default="1" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.271 "maxAssociations.MatchInteraction.Attr" Attribute Group Description

The XSD description for the "maxAssociations.MatchInteraction.Attr" Attribute Group is given in Table 4.3.271.

Table 4.3.271 XSD description for the "maxAssociations.MatchInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MatchInteraction.Type
Elements | matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type
Source |
    <xs:attributeGroup name="maxAssociations.MatchInteraction.Attr">
        <xs:attribute name="maxAssociations" use="optional" default="1" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.272 "maxAttempts.ItemSessionControl.Attr" Attribute Group Description

The XSD description for the "maxAttempts.ItemSessionControl.Attr" Attribute Group is given in Table 4.3.272.

Table 4.3.272 XSD description for the "maxAttempts.ItemSessionControl.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ItemSessionControl.Type
Elements | itemSessionControl/AssessmentItemRef.Type, itemSessionControl/AssessmentSection.Type, itemSessionControl/TestPart.Type
Source |
    <xs:attributeGroup name="maxAttempts.ItemSessionControl.Attr">
        <xs:attribute name="maxAttempts" use="optional" type="xs:int" />
    </xs:attributeGroup>

### 4.3.273 "maxChoices.ChoiceInteraction.Attr" Attribute Group Description

The XSD description for the "maxChoices.ChoiceInteraction.Attr" Attribute Group is given in Table 4.3.273.

Table 4.3.273 XSD description for the "maxChoices.ChoiceInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ChoiceInteraction.Type
Elements | choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type
Source |
    <xs:attributeGroup name="maxChoices.ChoiceInteraction.Attr">
        <xs:attribute name="maxChoices" use="optional" default="1" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.274 "maxChoices.GraphicOrderInteraction.Attr" Attribute Group Description

The XSD description for the "maxChoices.GraphicOrderInteraction.Attr" Attribute Group is given in Table 4.3.274.

Table 4.3.274 XSD description for the "maxChoices.GraphicOrderInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GraphicOrderInteraction.Type
Elements | graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type
Source |
    <xs:attributeGroup name="maxChoices.GraphicOrderInteraction.Attr">
        <xs:attribute name="maxChoices" use="optional" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.275 "maxChoices.HotTextInteraction.Attr" Attribute Group Description

The XSD description for the "maxChoices.HotTextInteraction.Attr" Attribute Group is given in Table 4.3.275.

Table 4.3.275 XSD description for the "maxChoices.HotTextInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | HotTextInteraction.Type
Elements | hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type
Source |
    <xs:attributeGroup name="maxChoices.HotTextInteraction.Attr">
        <xs:attribute name="maxChoices" use="optional" default="1" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.276 "maxChoices.HotspotInteraction.Attr" Attribute Group Description

The XSD description for the "maxChoices.HotspotInteraction.Attr" Attribute Group is given in Table 4.3.276.

Table 4.3.276 XSD description for the "maxChoices.HotspotInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | HotspotInteraction.Type
Elements | hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type
Source |
    <xs:attributeGroup name="maxChoices.HotspotInteraction.Attr">
        <xs:attribute name="maxChoices" use="optional" default="1" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.277 "maxChoices.OrderInteraction.Attr" Attribute Group Description

The XSD description for the "maxChoices.OrderInteraction.Attr" Attribute Group is given in Table 4.3.277.

Table 4.3.277 XSD description for the "maxChoices.OrderInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | OrderInteraction.Type
Elements | orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type
Source |
    <xs:attributeGroup name="maxChoices.OrderInteraction.Attr">
        <xs:attribute name="maxChoices" use="optional" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.278 "maxChoices.PositionObjectInteraction.Attr" Attribute Group Description

The XSD description for the "maxChoices.PositionObjectInteraction.Attr" Attribute Group is given in Table 4.3.278.

Table 4.3.278 XSD description for the "maxChoices.PositionObjectInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PositionObjectInteraction.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="maxChoices.PositionObjectInteraction.Attr">
        <xs:attribute name="maxChoices" use="optional" default="1" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.279 "maxChoices.SelectPointInteraction.Attr" Attribute Group Description

The XSD description for the "maxChoices.SelectPointInteraction.Attr" Attribute Group is given in Table 4.3.279.

Table 4.3.279 XSD description for the "maxChoices.SelectPointInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SelectPointInteraction.Type
Elements | selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type
Source |
    <xs:attributeGroup name="maxChoices.SelectPointInteraction.Attr">
        <xs:attribute name="maxChoices" use="optional" default="0" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.280 "maxPlays.MediaInteraction.Attr" Attribute Group Description

The XSD description for the "maxPlays.MediaInteraction.Attr" Attribute Group is given in Table 4.3.280.

Table 4.3.280 XSD description for the "maxPlays.MediaInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MediaInteraction.Type
Elements | mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type
Source |
    <xs:attributeGroup name="maxPlays.MediaInteraction.Attr">
        <xs:attribute name="maxPlays" use="optional" default="0" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.281 "maxStrings.ExtendedTextInteraction.Attr" Attribute Group Description

The XSD description for the "maxStrings.ExtendedTextInteraction.Attr" Attribute Group is given in Table 4.3.281.

Table 4.3.281 XSD description for the "maxStrings.ExtendedTextInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ExtendedTextInteraction.Type
Elements | extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type
Source |
    <xs:attributeGroup name="maxStrings.ExtendedTextInteraction.Attr">
        <xs:attribute name="maxStrings" use="optional" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.282 "maxTime.TimeLimits.Attr" Attribute Group Description

The XSD description for the "maxTime.TimeLimits.Attr" Attribute Group is given in Table 4.3.282.

Table 4.3.282 XSD description for the "maxTime.TimeLimits.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TimeLimits.Type
Elements | timeLimits/AssessmentItemRef.Type, timeLimits/AssessmentSection.Type, timeLimits/AssessmentTest.Type, timeLimits/TestPart.Type
Source |
    <xs:attributeGroup name="maxTime.TimeLimits.Attr">
        <xs:attribute name="maxTime" use="optional" type="NonNegativeDouble.Type" />
    </xs:attributeGroup>

### 4.3.283 "media.StyleSheet.Attr" Attribute Group Description

The XSD description for the "media.StyleSheet.Attr" Attribute Group is given in Table 4.3.283.

Table 4.3.283 XSD description for the "media.StyleSheet.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | StyleSheet.Type
Elements | stylesheet/AssessmentItem.Type, stylesheet/AssessmentStimulus.Type, stylesheet/AssessmentTest.Type, stylesheet/FeedbackBlock.Type, stylesheet/ModalFeedback.Type, stylesheet/RubricBlock.Type, stylesheet/RubricBlockTemplateBlock.Type, stylesheet/TemplateBlock.Type, stylesheet/TemplateBlockFeedbackBlock.Type, stylesheet/TestFeedback.Type
Source |
    <xs:attributeGroup name="media.StyleSheet.Attr">
        <xs:attribute name="media" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.284 "min.AnyN.Attr" Attribute Group Description

The XSD description for the "min.AnyN.Attr" Attribute Group is given in Table 4.3.284.

Table 4.3.284 XSD description for the "min.AnyN.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AnyN.Type
Elements | anyN/AnyN.Type, anyN/BranchRule.Type, anyN/CustomOperator.Type, anyN/Equal.Type, anyN/EqualRounded.Type, anyN/FieldValue.Type, anyN/Index.Type, anyN/Inside.Type, anyN/Logic0toMany.Type, anyN/Logic1toMany.Type, anyN/LogicPair.Type, anyN/LogicSingle.Type, anyN/LookupOutcomeValue.Type, anyN/MathOperator.Type, anyN/OutcomeIf.Type, anyN/PatternMatch.Type, anyN/Repeat.Type, anyN/ResponseIf.Type, anyN/RoundTo.Type, anyN/SetValue.Type, anyN/StatsOperator.Type, anyN/StringMatch.Type, anyN/Substring.Type, anyN/TemplateConstraint.Type, anyN/TemplateDefault.Type, anyN/TemplateIf.Type
Source |
    <xs:attributeGroup name="min.AnyN.Attr">
        <xs:attribute name="min" use="required">
            <xs:simpleType>
                <xs:union>
                    <xs:simpleType>
                        <xs:restriction base="xs:integer" />
                    </xs:simpleType>
                    <xs:simpleType>
                        <xs:restriction base="VariableString.Type" />
                    </xs:simpleType>
                </xs:union>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.285 "min.RandomFloat.Attr" Attribute Group Description

The XSD description for the "min.RandomFloat.Attr" Attribute Group is given in Table 4.3.285.

Table 4.3.285 XSD description for the "min.RandomFloat.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | RandomFloat.Type
Elements | randomFloat/AnyN.Type, randomFloat/BranchRule.Type, randomFloat/CustomOperator.Type, randomFloat/Equal.Type, randomFloat/EqualRounded.Type, randomFloat/FieldValue.Type, randomFloat/Index.Type, randomFloat/Inside.Type, randomFloat/Logic0toMany.Type, randomFloat/Logic1toMany.Type, randomFloat/LogicPair.Type, randomFloat/LogicSingle.Type, randomFloat/LookupOutcomeValue.Type, randomFloat/MathOperator.Type, randomFloat/OutcomeIf.Type, randomFloat/PatternMatch.Type, randomFloat/Repeat.Type, randomFloat/ResponseIf.Type, randomFloat/RoundTo.Type, randomFloat/SetValue.Type, randomFloat/StatsOperator.Type, randomFloat/StringMatch.Type, randomFloat/Substring.Type, randomFloat/TemplateConstraint.Type, randomFloat/TemplateDefault.Type, randomFloat/TemplateIf.Type, randomFloat/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="min.RandomFloat.Attr">
        <xs:attribute name="min" use="optional" default="0">
            <xs:simpleType>
                <xs:union>
                    <xs:simpleType>
                        <xs:restriction base="xs:double" />
                    </xs:simpleType>
                    <xs:simpleType>
                        <xs:restriction base="VariableString.Type" />
                    </xs:simpleType>
                </xs:union>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.286 "min.RandomInteger.Attr" Attribute Group Description

The XSD description for the "min.RandomInteger.Attr" Attribute Group is given in Table 4.3.286.

Table 4.3.286 XSD description for the "min.RandomInteger.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | RandomInteger.Type
Elements | randomInteger/AnyN.Type, randomInteger/BranchRule.Type, randomInteger/CustomOperator.Type, randomInteger/Equal.Type, randomInteger/EqualRounded.Type, randomInteger/FieldValue.Type, randomInteger/Index.Type, randomInteger/Inside.Type, randomInteger/Logic0toMany.Type, randomInteger/Logic1toMany.Type, randomInteger/LogicPair.Type, randomInteger/LogicSingle.Type, randomInteger/LookupOutcomeValue.Type, randomInteger/MathOperator.Type, randomInteger/OutcomeIf.Type, randomInteger/PatternMatch.Type, randomInteger/Repeat.Type, randomInteger/ResponseIf.Type, randomInteger/RoundTo.Type, randomInteger/SetValue.Type, randomInteger/StatsOperator.Type, randomInteger/StringMatch.Type, randomInteger/Substring.Type, randomInteger/TemplateConstraint.Type, randomInteger/TemplateDefault.Type, randomInteger/TemplateIf.Type, randomInteger/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="min.RandomInteger.Attr">
        <xs:attribute name="min" use="optional" default="0">
            <xs:simpleType>
                <xs:union>
                    <xs:simpleType>
                        <xs:restriction base="xs:integer" />
                    </xs:simpleType>
                    <xs:simpleType>
                        <xs:restriction base="VariableString.Type" />
                    </xs:simpleType>
                </xs:union>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.287 "minAssociations.AssociateInteraction.Attr" Attribute Group Description

The XSD description for the "minAssociations.AssociateInteraction.Attr" Attribute Group is given in Table 4.3.287.

Table 4.3.287 XSD description for the "minAssociations.AssociateInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssociateInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type
Source |
    <xs:attributeGroup name="minAssociations.AssociateInteraction.Attr">
        <xs:attribute name="minAssociations" use="optional" default="0" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.288 "minAssociations.GapMatchInteraction.Attr" Attribute Group Description

The XSD description for the "minAssociations.GapMatchInteraction.Attr" Attribute Group is given in Table 4.3.288.

Table 4.3.288 XSD description for the "minAssociations.GapMatchInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapMatchInteraction.Type
Elements | gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type
Source |
    <xs:attributeGroup name="minAssociations.GapMatchInteraction.Attr">
        <xs:attribute name="minAssociations" use="optional" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.289 "minAssociations.GraphicAssociateInteraction.Attr" Attribute Group Description

The XSD description for the "minAssociations.GraphicAssociateInteraction.Attr" Attribute Group is given in Table 4.3.289.

Table 4.3.289 XSD description for the "minAssociations.GraphicAssociateInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GraphicAssociateInteraction.Type
Elements | graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type
Source |
    <xs:attributeGroup name="minAssociations.GraphicAssociateInteraction.Attr">
        <xs:attribute name="minAssociations" use="optional" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.290 "minAssociations.GraphicGapMatchInteraction.Attr" Attribute Group Description

The XSD description for the "minAssociations.GraphicGapMatchInteraction.Attr" Attribute Group is given in Table 4.3.290.

Table 4.3.290 XSD description for the "minAssociations.GraphicGapMatchInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GraphicGapMatchInteraction.Type
Elements | graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type
Source |
    <xs:attributeGroup name="minAssociations.GraphicGapMatchInteraction.Attr">
        <xs:attribute name="minAssociations" use="optional" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.291 "minAssociations.MatchInteraction.Attr" Attribute Group Description

The XSD description for the "minAssociations.MatchInteraction.Attr" Attribute Group is given in Table 4.3.291.

Table 4.3.291 XSD description for the "minAssociations.MatchInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MatchInteraction.Type
Elements | matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type
Source |
    <xs:attributeGroup name="minAssociations.MatchInteraction.Attr">
        <xs:attribute name="minAssociations" use="optional" default="0" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.292 "minChoices.ChoiceInteraction.Attr" Attribute Group Description

The XSD description for the "minChoices.ChoiceInteraction.Attr" Attribute Group is given in Table 4.3.292.

Table 4.3.292 XSD description for the "minChoices.ChoiceInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ChoiceInteraction.Type
Elements | choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type
Source |
    <xs:attributeGroup name="minChoices.ChoiceInteraction.Attr">
        <xs:attribute name="minChoices" use="optional" default="0" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.293 "minChoices.GraphicOrderInteraction.Attr" Attribute Group Description

The XSD description for the "minChoices.GraphicOrderInteraction.Attr" Attribute Group is given in Table 4.3.293.

Table 4.3.293 XSD description for the "minChoices.GraphicOrderInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GraphicOrderInteraction.Type
Elements | graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type
Source |
    <xs:attributeGroup name="minChoices.GraphicOrderInteraction.Attr">
        <xs:attribute name="minChoices" use="optional" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.294 "minChoices.HotTextInteraction.Attr" Attribute Group Description

The XSD description for the "minChoices.HotTextInteraction.Attr" Attribute Group is given in Table 4.3.294.

Table 4.3.294 XSD description for the "minChoices.HotTextInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | HotTextInteraction.Type
Elements | hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type
Source |
    <xs:attributeGroup name="minChoices.HotTextInteraction.Attr">
        <xs:attribute name="minChoices" use="optional" default="0" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.295 "minChoices.HotspotInteraction.Attr" Attribute Group Description

The XSD description for the "minChoices.HotspotInteraction.Attr" Attribute Group is given in Table 4.3.295.

Table 4.3.295 XSD description for the "minChoices.HotspotInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | HotspotInteraction.Type
Elements | hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type
Source |
    <xs:attributeGroup name="minChoices.HotspotInteraction.Attr">
        <xs:attribute name="minChoices" use="optional" default="0" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.296 "minChoices.OrderInteraction.Attr" Attribute Group Description

The XSD description for the "minChoices.OrderInteraction.Attr" Attribute Group is given in Table 4.3.296.

Table 4.3.296 XSD description for the "minChoices.OrderInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | OrderInteraction.Type
Elements | orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type
Source |
    <xs:attributeGroup name="minChoices.OrderInteraction.Attr">
        <xs:attribute name="minChoices" use="optional" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.297 "minChoices.PositionObjectInteraction.Attr" Attribute Group Description

The XSD description for the "minChoices.PositionObjectInteraction.Attr" Attribute Group is given in Table 4.3.297.

Table 4.3.297 XSD description for the "minChoices.PositionObjectInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PositionObjectInteraction.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="minChoices.PositionObjectInteraction.Attr">
        <xs:attribute name="minChoices" use="optional" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.298 "minChoices.SelectPointInteraction.Attr" Attribute Group Description

The XSD description for the "minChoices.SelectPointInteraction.Attr" Attribute Group is given in Table 4.3.298.

Table 4.3.298 XSD description for the "minChoices.SelectPointInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SelectPointInteraction.Type
Elements | selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type
Source |
    <xs:attributeGroup name="minChoices.SelectPointInteraction.Attr">
        <xs:attribute name="minChoices" use="optional" default="0" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.299 "minPlays.MediaInteraction.Attr" Attribute Group Description

The XSD description for the "minPlays.MediaInteraction.Attr" Attribute Group is given in Table 4.3.299.

Table 4.3.299 XSD description for the "minPlays.MediaInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MediaInteraction.Type
Elements | mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type
Source |
    <xs:attributeGroup name="minPlays.MediaInteraction.Attr">
        <xs:attribute name="minPlays" use="optional" default="0" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.300 "minStrings.ExtendedTextInteraction.Attr" Attribute Group Description

The XSD description for the "minStrings.ExtendedTextInteraction.Attr" Attribute Group is given in Table 4.3.300.

Table 4.3.300 XSD description for the "minStrings.ExtendedTextInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ExtendedTextInteraction.Type
Elements | extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type
Source |
    <xs:attributeGroup name="minStrings.ExtendedTextInteraction.Attr">
        <xs:attribute name="minStrings" use="optional" default="0" type="xs:nonNegativeInteger" />
    </xs:attributeGroup>

### 4.3.301 "minTime.TimeLimits.Attr" Attribute Group Description

The XSD description for the "minTime.TimeLimits.Attr" Attribute Group is given in Table 4.3.301.

Table 4.3.301 XSD description for the "minTime.TimeLimits.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TimeLimits.Type
Elements | timeLimits/AssessmentItemRef.Type, timeLimits/AssessmentSection.Type, timeLimits/AssessmentTest.Type, timeLimits/TestPart.Type
Source |
    <xs:attributeGroup name="minTime.TimeLimits.Attr">
        <xs:attribute name="minTime" use="optional" type="NonNegativeDouble.Type" />
    </xs:attributeGroup>

### 4.3.302 "n.Index.Attr" Attribute Group Description

The XSD description for the "n.Index.Attr" Attribute Group is given in Table 4.3.302.

Table 4.3.302 XSD description for the "n.Index.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Index.Type
Elements | index/AnyN.Type, index/BranchRule.Type, index/CustomOperator.Type, index/Equal.Type, index/EqualRounded.Type, index/FieldValue.Type, index/Index.Type, index/Inside.Type, index/Logic0toMany.Type, index/Logic1toMany.Type, index/LogicPair.Type, index/LogicSingle.Type, index/LookupOutcomeValue.Type, index/MathOperator.Type, index/OutcomeIf.Type, index/PatternMatch.Type, index/Repeat.Type, index/ResponseIf.Type, index/RoundTo.Type, index/SetValue.Type, index/StatsOperator.Type, index/StringMatch.Type, index/Substring.Type, index/TemplateConstraint.Type, index/TemplateDefault.Type, index/TemplateIf.Type, index/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="n.Index.Attr">
        <xs:attribute name="n" use="required">
            <xs:simpleType>
                <xs:union>
                    <xs:simpleType>
                        <xs:restriction base="xs:NCName" />
                    </xs:simpleType>
                    <xs:simpleType>
                        <xs:restriction base="xs:int" />
                    </xs:simpleType>
                </xs:union>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.303 "name.MathConstant.Attr" Attribute Group Description

The XSD description for the "name.MathConstant.Attr" Attribute Group is given in Table 4.3.303.

Table 4.3.303 XSD description for the "name.MathConstant.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MathConstant.Type
Elements | mathConstant/AnyN.Type, mathConstant/BranchRule.Type, mathConstant/CustomOperator.Type, mathConstant/Equal.Type, mathConstant/EqualRounded.Type, mathConstant/FieldValue.Type, mathConstant/Index.Type, mathConstant/Inside.Type, mathConstant/Logic0toMany.Type, mathConstant/Logic1toMany.Type, mathConstant/LogicPair.Type, mathConstant/LogicSingle.Type, mathConstant/LookupOutcomeValue.Type, mathConstant/MathOperator.Type, mathConstant/OutcomeIf.Type, mathConstant/PatternMatch.Type, mathConstant/Repeat.Type, mathConstant/ResponseIf.Type, mathConstant/RoundTo.Type, mathConstant/SetValue.Type, mathConstant/StatsOperator.Type, mathConstant/StringMatch.Type, mathConstant/Substring.Type, mathConstant/TemplateConstraint.Type, mathConstant/TemplateDefault.Type, mathConstant/TemplateIf.Type, mathConstant/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="name.MathConstant.Attr">
        <xs:attribute name="name" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="pi" />
                    <xs:enumeration value="e" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.304 "name.MathOperator.Attr" Attribute Group Description

The XSD description for the "name.MathOperator.Attr" Attribute Group is given in Table 4.3.304.

Table 4.3.304 XSD description for the "name.MathOperator.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MathOperator.Type
Elements | mathOperator/AnyN.Type, mathOperator/BranchRule.Type, mathOperator/CustomOperator.Type, mathOperator/Equal.Type, mathOperator/EqualRounded.Type, mathOperator/FieldValue.Type, mathOperator/Index.Type, mathOperator/Inside.Type, mathOperator/Logic0toMany.Type, mathOperator/Logic1toMany.Type, mathOperator/LogicPair.Type, mathOperator/LogicSingle.Type, mathOperator/LookupOutcomeValue.Type, mathOperator/MathOperator.Type, mathOperator/OutcomeIf.Type, mathOperator/PatternMatch.Type, mathOperator/Repeat.Type, mathOperator/ResponseIf.Type, mathOperator/RoundTo.Type, mathOperator/SetValue.Type, mathOperator/StatsOperator.Type, mathOperator/StringMatch.Type, mathOperator/Substring.Type, mathOperator/TemplateConstraint.Type, mathOperator/TemplateDefault.Type, mathOperator/TemplateIf.Type, mathOperator/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="name.MathOperator.Attr">
        <xs:attribute name="name" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="sin" />
                    <xs:enumeration value="cos" />
                    <xs:enumeration value="tan" />
                    <xs:enumeration value="sec" />
                    <xs:enumeration value="csc" />
                    <xs:enumeration value="cot" />
                    <xs:enumeration value="asin" />
                    <xs:enumeration value="acos" />
                    <xs:enumeration value="atan" />
                    <xs:enumeration value="atan2" />
                    <xs:enumeration value="asec" />
                    <xs:enumeration value="acsc" />
                    <xs:enumeration value="acot" />
                    <xs:enumeration value="sinh" />
                    <xs:enumeration value="cosh" />
                    <xs:enumeration value="tanh" />
                    <xs:enumeration value="sech" />
                    <xs:enumeration value="csch" />
                    <xs:enumeration value="coth" />
                    <xs:enumeration value="log" />
                    <xs:enumeration value="ln" />
                    <xs:enumeration value="exp" />
                    <xs:enumeration value="abs" />
                    <xs:enumeration value="signum" />
                    <xs:enumeration value="floor" />
                    <xs:enumeration value="ceil" />
                    <xs:enumeration value="toDegrees" />
                    <xs:enumeration value="toRadians" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.305 "name.Param.Attr" Attribute Group Description

The XSD description for the "name.Param.Attr" Attribute Group is given in Table 4.3.305.

Table 4.3.305 XSD description for the "name.Param.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Param.Type
Elements | param/Object.Type
Source |
    <xs:attributeGroup name="name.Param.Attr">
        <xs:attribute name="name" use="required" type="xs:string" />
    </xs:attributeGroup>

### 4.3.306 "name.StatsOperator.Attr" Attribute Group Description

The XSD description for the "name.StatsOperator.Attr" Attribute Group is given in Table 4.3.306.

Table 4.3.306 XSD description for the "name.StatsOperator.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | StatsOperator.Type
Elements | statsOperator/AnyN.Type, statsOperator/BranchRule.Type, statsOperator/CustomOperator.Type, statsOperator/Equal.Type, statsOperator/EqualRounded.Type, statsOperator/FieldValue.Type, statsOperator/Index.Type, statsOperator/Inside.Type, statsOperator/Logic0toMany.Type, statsOperator/Logic1toMany.Type, statsOperator/LogicPair.Type, statsOperator/LogicSingle.Type, statsOperator/LookupOutcomeValue.Type, statsOperator/MathOperator.Type, statsOperator/OutcomeIf.Type, statsOperator/PatternMatch.Type, statsOperator/Repeat.Type, statsOperator/ResponseIf.Type, statsOperator/RoundTo.Type, statsOperator/SetValue.Type, statsOperator/StatsOperator.Type, statsOperator/StringMatch.Type, statsOperator/Substring.Type, statsOperator/TemplateConstraint.Type, statsOperator/TemplateDefault.Type, statsOperator/TemplateIf.Type, statsOperator/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="name.StatsOperator.Attr">
        <xs:attribute name="name" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="mean" />
                    <xs:enumeration value="sampleVariance" />
                    <xs:enumeration value="sampleSD" />
                    <xs:enumeration value="popVariance" />
                    <xs:enumeration value="popSD" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.307 "navigationMode.TestPart.Attr" Attribute Group Description

The XSD description for the "navigationMode.TestPart.Attr" Attribute Group is given in Table 4.3.307.

Table 4.3.307 XSD description for the "navigationMode.TestPart.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TestPart.Type
Elements | testPart/AssessmentTest.Type
Source |
    <xs:attributeGroup name="navigationMode.TestPart.Attr">
        <xs:attribute name="navigationMode" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="linear" />
                    <xs:enumeration value="nonlinear" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.308 "normalMaximum.OutcomeDeclaration.Attr" Attribute Group Description

The XSD description for the "normalMaximum.OutcomeDeclaration.Attr" Attribute Group is given in Table 4.3.308.

Table 4.3.308 XSD description for the "normalMaximum.OutcomeDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | outcomeDeclaration
ComplexTypes | OutcomeDeclaration.Type
Source |
    <xs:attributeGroup name="normalMaximum.OutcomeDeclaration.Attr">
        <xs:attribute name="normalMaximum" use="optional" type="NonNegativeDouble.Type" />
    </xs:attributeGroup>

### 4.3.309 "normalMinimum.OutcomeDeclaration.Attr" Attribute Group Description

The XSD description for the "normalMinimum.OutcomeDeclaration.Attr" Attribute Group is given in Table 4.3.309.

Table 4.3.309 XSD description for the "normalMinimum.OutcomeDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | outcomeDeclaration
ComplexTypes | OutcomeDeclaration.Type
Source |
    <xs:attributeGroup name="normalMinimum.OutcomeDeclaration.Attr">
        <xs:attribute name="normalMinimum" use="optional" type="xs:double" />
    </xs:attributeGroup>

### 4.3.310 "numberRepeats.Repeat.Attr" Attribute Group Description

The XSD description for the "numberRepeats.Repeat.Attr" Attribute Group is given in Table 4.3.310.

Table 4.3.310 XSD description for the "numberRepeats.Repeat.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Repeat.Type
Elements | repeat/AnyN.Type, repeat/BranchRule.Type, repeat/CustomOperator.Type, repeat/Equal.Type, repeat/EqualRounded.Type, repeat/FieldValue.Type, repeat/Index.Type, repeat/Inside.Type, repeat/Logic0toMany.Type, repeat/Logic1toMany.Type, repeat/LogicPair.Type, repeat/LogicSingle.Type, repeat/LookupOutcomeValue.Type, repeat/MathOperator.Type, repeat/OutcomeIf.Type, repeat/PatternMatch.Type, repeat/Repeat.Type, repeat/ResponseIf.Type, repeat/RoundTo.Type, repeat/SetValue.Type, repeat/StatsOperator.Type, repeat/StringMatch.Type, repeat/Substring.Type, repeat/TemplateConstraint.Type, repeat/TemplateDefault.Type, repeat/TemplateIf.Type, repeat/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="numberRepeats.Repeat.Attr">
        <xs:attribute name="numberRepeats" use="required">
            <xs:simpleType>
                <xs:union>
                    <xs:simpleType>
                        <xs:restriction base="xs:NCName" />
                    </xs:simpleType>
                    <xs:simpleType>
                        <xs:restriction base="xs:int" />
                    </xs:simpleType>
                </xs:union>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.311 "objectLabel.GapImg.Attr" Attribute Group Description

The XSD description for the "objectLabel.GapImg.Attr" Attribute Group is given in Table 4.3.311.

Table 4.3.311 XSD description for the "objectLabel.GapImg.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapImg.Type
Elements | gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="objectLabel.GapImg.Attr">
        <xs:attribute name="objectLabel" use="optional" type="xs:string" />
    </xs:attributeGroup>

### 4.3.312 "orientation.ChoiceInteraction.Attr" Attribute Group Description

The XSD description for the "orientation.ChoiceInteraction.Attr" Attribute Group is given in Table 4.3.312.

Table 4.3.312 XSD description for the "orientation.ChoiceInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ChoiceInteraction.Type
Elements | choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type
Source |
    <xs:attributeGroup name="orientation.ChoiceInteraction.Attr">
        <xs:attribute name="orientation" use="optional" default="vertical">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="horizontal" />
                    <xs:enumeration value="vertical" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.313 "orientation.OrderInteraction.Attr" Attribute Group Description

The XSD description for the "orientation.OrderInteraction.Attr" Attribute Group is given in Table 4.3.313.

Table 4.3.313 XSD description for the "orientation.OrderInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | OrderInteraction.Type
Elements | orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type
Source |
    <xs:attributeGroup name="orientation.OrderInteraction.Attr">
        <xs:attribute name="orientation" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="horizontal" />
                    <xs:enumeration value="vertical" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.314 "orientation.SliderInteraction.Attr" Attribute Group Description

The XSD description for the "orientation.SliderInteraction.Attr" Attribute Group is given in Table 4.3.314.

Table 4.3.314 XSD description for the "orientation.SliderInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SliderInteraction.Type
Elements | sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type
Source |
    <xs:attributeGroup name="orientation.SliderInteraction.Attr">
        <xs:attribute name="orientation" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="horizontal" />
                    <xs:enumeration value="vertical" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.315 "outcomeIdentifier.FeedbackBlock.Attr" Attribute Group Description

The XSD description for the "outcomeIdentifier.FeedbackBlock.Attr" Attribute Group is given in Table 4.3.315.

Table 4.3.315 XSD description for the "outcomeIdentifier.FeedbackBlock.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | FeedbackBlock.Type
Elements | feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type
Source |
    <xs:attributeGroup name="outcomeIdentifier.FeedbackBlock.Attr">
        <xs:attribute name="outcomeIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.316 "outcomeIdentifier.FeedbackInline.Attr" Attribute Group Description

The XSD description for the "outcomeIdentifier.FeedbackInline.Attr" Attribute Group is given in Table 4.3.316.

Table 4.3.316 XSD description for the "outcomeIdentifier.FeedbackInline.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | FeedbackInline.Type
Elements | feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type
Source |
    <xs:attributeGroup name="outcomeIdentifier.FeedbackInline.Attr">
        <xs:attribute name="outcomeIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.317 "outcomeIdentifier.ModalFeedback.Attr" Attribute Group Description

The XSD description for the "outcomeIdentifier.ModalFeedback.Attr" Attribute Group is given in Table 4.3.317.

Table 4.3.317 XSD description for the "outcomeIdentifier.ModalFeedback.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ModalFeedback.Type
Elements | modalFeedback/AssessmentItem.Type
Source |
    <xs:attributeGroup name="outcomeIdentifier.ModalFeedback.Attr">
        <xs:attribute name="outcomeIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.318 "outcomeIdentifier.OutcomeMinMax.Attr" Attribute Group Description

The XSD description for the "outcomeIdentifier.OutcomeMinMax.Attr" Attribute Group is given in Table 4.3.318.

Table 4.3.318 XSD description for the "outcomeIdentifier.OutcomeMinMax.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | OutcomeMinMax.Type
Elements | outcomeMinimum/AnyN.Type, outcomeMinimum/BranchRule.Type, outcomeMinimum/CustomOperator.Type, outcomeMinimum/Equal.Type, outcomeMinimum/EqualRounded.Type, outcomeMinimum/FieldValue.Type, outcomeMinimum/Index.Type, outcomeMinimum/Inside.Type, outcomeMinimum/Logic0toMany.Type, outcomeMinimum/Logic1toMany.Type, outcomeMinimum/LogicPair.Type, outcomeMinimum/LogicSingle.Type, outcomeMinimum/LookupOutcomeValue.Type, outcomeMinimum/MathOperator.Type, outcomeMinimum/OutcomeIf.Type, outcomeMinimum/PatternMatch.Type, outcomeMinimum/Repeat.Type, outcomeMinimum/ResponseIf.Type, outcomeMinimum/RoundTo.Type, outcomeMinimum/SetValue.Type, outcomeMinimum/StatsOperator.Type, outcomeMinimum/StringMatch.Type, outcomeMinimum/Substring.Type, outcomeMinimum/TemplateConstraint.Type, outcomeMinimum/TemplateDefault.Type, outcomeMinimum/TemplateIf.Type, outcomeMaximum/AnyN.Type, outcomeMaximum/BranchRule.Type, outcomeMaximum/CustomOperator.Type, outcomeMaximum/Equal.Type, outcomeMaximum/EqualRounded.Type, outcomeMaximum/FieldValue.Type, outcomeMaximum/Index.Type, outcomeMaximum/Inside.Type, outcomeMaximum/Logic0toMany.Type, outcomeMaximum/Logic1toMany.Type, outcomeMaximum/LogicPair.Type, outcomeMaximum/LogicSingle.Type, outcomeMaximum/LookupOutcomeValue.Type, outcomeMaximum/MathOperator.Type, outcomeMaximum/OutcomeIf.Type, outcomeMaximum/PatternMatch.Type, outcomeMaximum/Repeat.Type, outcomeMaximum/ResponseIf.Type, outcomeMaximum/RoundTo.Type, outcomeMaximum/SetValue.Type, outcomeMaximum/StatsOperator.Type, outcomeMaximum/StringMatch.Type, outcomeMaximum/Substring.Type, outcomeMaximum/TemplateConstraint.Type, outcomeMaximum/TemplateDefault.Type, outcomeMaximum/TemplateIf.Type, outcomeMinimum/NumericLogic1toMany.Type, outcomeMaximum/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="outcomeIdentifier.OutcomeMinMax.Attr">
        <xs:attribute name="outcomeIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.319 "outcomeIdentifier.TemplateBlockFeedbackBlock.Attr" Attribute Group Description

The XSD description for the "outcomeIdentifier.TemplateBlockFeedbackBlock.Attr" Attribute Group is given in Table 4.3.319.

Table 4.3.319 XSD description for the "outcomeIdentifier.TemplateBlockFeedbackBlock.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TemplateBlockFeedbackBlock.Type
Elements | feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type
Source |
    <xs:attributeGroup name="outcomeIdentifier.TemplateBlockFeedbackBlock.Attr">
        <xs:attribute name="outcomeIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.320 "outcomeIdentifier.TestFeedback.Attr" Attribute Group Description

The XSD description for the "outcomeIdentifier.TestFeedback.Attr" Attribute Group is given in Table 4.3.320.

Table 4.3.320 XSD description for the "outcomeIdentifier.TestFeedback.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TestFeedback.Type
Elements | testFeedback/AssessmentTest.Type, testFeedback/TestPart.Type
Source |
    <xs:attributeGroup name="outcomeIdentifier.TestFeedback.Attr">
        <xs:attribute name="outcomeIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.321 "paramVariable.TemplateDeclaration.Attr" Attribute Group Description

The XSD description for the "paramVariable.TemplateDeclaration.Attr" Attribute Group is given in Table 4.3.321.

Table 4.3.321 XSD description for the "paramVariable.TemplateDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TemplateDeclaration.Type
Elements | templateDeclaration/AssessmentItem.Type
Source |
    <xs:attributeGroup name="paramVariable.TemplateDeclaration.Attr">
        <xs:attribute name="paramVariable" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.322 "pattern.PatternMatch.Attr" Attribute Group Description

The XSD description for the "pattern.PatternMatch.Attr" Attribute Group is given in Table 4.3.322.

Table 4.3.322 XSD description for the "pattern.PatternMatch.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PatternMatch.Type
Elements | patternMatch/AnyN.Type, patternMatch/BranchRule.Type, patternMatch/CustomOperator.Type, patternMatch/Equal.Type, patternMatch/EqualRounded.Type, patternMatch/FieldValue.Type, patternMatch/Index.Type, patternMatch/Inside.Type, patternMatch/Logic0toMany.Type, patternMatch/Logic1toMany.Type, patternMatch/LogicPair.Type, patternMatch/LogicSingle.Type, patternMatch/LookupOutcomeValue.Type, patternMatch/MathOperator.Type, patternMatch/OutcomeIf.Type, patternMatch/PatternMatch.Type, patternMatch/Repeat.Type, patternMatch/ResponseIf.Type, patternMatch/RoundTo.Type, patternMatch/SetValue.Type, patternMatch/StatsOperator.Type, patternMatch/StringMatch.Type, patternMatch/Substring.Type, patternMatch/TemplateConstraint.Type, patternMatch/TemplateDefault.Type, patternMatch/TemplateIf.Type
Source |
    <xs:attributeGroup name="pattern.PatternMatch.Attr">
        <xs:attribute name="pattern" use="required">
            <xs:simpleType>
                <xs:union>
                    <xs:simpleType>
                        <xs:restriction base="xs:string" />
                    </xs:simpleType>
                    <xs:simpleType>
                        <xs:restriction base="EncVariableString.Type" />
                    </xs:simpleType>
                </xs:union>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.323 "patternMask.ExtendedTextInteraction.Attr" Attribute Group Description

The XSD description for the "patternMask.ExtendedTextInteraction.Attr" Attribute Group is given in Table 4.3.323.

Table 4.3.323 XSD description for the "patternMask.ExtendedTextInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ExtendedTextInteraction.Type
Elements | extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type
Source |
    <xs:attributeGroup name="patternMask.ExtendedTextInteraction.Attr">
        <xs:attribute name="patternMask" use="optional" type="xs:string" />
    </xs:attributeGroup>

### 4.3.324 "patternMask.TextEntryInteraction.Attr" Attribute Group Description

The XSD description for the "patternMask.TextEntryInteraction.Attr" Attribute Group is given in Table 4.3.324.

Table 4.3.324 XSD description for the "patternMask.TextEntryInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TextEntryInteraction.Type
Elements | textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="patternMask.TextEntryInteraction.Attr">
        <xs:attribute name="patternMask" use="optional" type="xs:string" />
    </xs:attributeGroup>

### 4.3.325 "placeholderText.ExtendedTextInteraction.Attr" Attribute Group Description

The XSD description for the "placeholderText.ExtendedTextInteraction.Attr" Attribute Group is given in Table 4.3.325.

Table 4.3.325 XSD description for the "placeholderText.ExtendedTextInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ExtendedTextInteraction.Type
Elements | extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type
Source |
    <xs:attributeGroup name="placeholderText.ExtendedTextInteraction.Attr">
        <xs:attribute name="placeholderText" use="optional" type="xs:string" />
    </xs:attributeGroup>

### 4.3.326 "placeholderText.TextEntryInteraction.Attr" Attribute Group Description

The XSD description for the "placeholderText.TextEntryInteraction.Attr" Attribute Group is given in Table 4.3.326.

Table 4.3.326 XSD description for the "placeholderText.TextEntryInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TextEntryInteraction.Type
Elements | textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="placeholderText.TextEntryInteraction.Attr">
        <xs:attribute name="placeholderText" use="optional" type="xs:string" />
    </xs:attributeGroup>

### 4.3.327 "powerForm.PrintedVariable.Attr" Attribute Group Description

The XSD description for the "powerForm.PrintedVariable.Attr" Attribute Group is given in Table 4.3.327.

Table 4.3.327 XSD description for the "powerForm.PrintedVariable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | PrintedVariable.Type
Elements | printedVariable/TemplateBlock.Type, printedVariable/TemplateBlockFeedbackBlock.Type, printedVariable/FeedbackBlock.Type, printedVariable/ModalFeedback.Type, printedVariable/TestFeedback.Type, printedVariable/FeedbackInline.Type, printedVariable/DD.Type, printedVariable/Div.Type, printedVariable/LI.Type, printedVariable/TDH.Type, printedVariable/InfoControl.Type, printedVariable/SimpleAssociableChoice.Type, printedVariable/SimpleChoice.Type, printedVariable/GapText.Type, printedVariable/HotText.Type, printedVariable/InlineChoice.Type, printedVariable/Label.Type, printedVariable/A.Type, printedVariable/Caption.Type, printedVariable/DT.Type, printedVariable/HTMLText.Type, printedVariable/Q.Type, printedVariable/TemplateInline.Type, printedVariable/RubricBlock.Type, printedVariable/RubricBlockTemplateBlock.Type, printedVariable/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="powerForm.PrintedVariable.Attr">
        <xs:attribute name="powerForm" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.328 "required.AssessmentItemRef.Attr" Attribute Group Description

The XSD description for the "required.AssessmentItemRef.Attr" Attribute Group is given in Table 4.3.328.

Table 4.3.328 XSD description for the "required.AssessmentItemRef.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssessmentItemRef.Type
Elements | assessmentItemRef/AssessmentSection.Type
Source |
    <xs:attributeGroup name="required.AssessmentItemRef.Attr">
        <xs:attribute name="required" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.329 "required.AssessmentSection.Attr" Attribute Group Description

The XSD description for the "required.AssessmentSection.Attr" Attribute Group is given in Table 4.3.329.

Table 4.3.329 XSD description for the "required.AssessmentSection.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentSection
ComplexTypes | AssessmentSection.Type
Source |
    <xs:attributeGroup name="required.AssessmentSection.Attr">
        <xs:attribute name="required" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.330 "required.Gap.Attr" Attribute Group Description

The XSD description for the "required.Gap.Attr" Attribute Group is given in Table 4.3.330.

Table 4.3.330 XSD description for the "required.Gap.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Gap.Type
Elements | gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type
Source |
    <xs:attributeGroup name="required.Gap.Attr">
        <xs:attribute name="required" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.331 "required.InlineChoiceInteraction.Attr" Attribute Group Description

The XSD description for the "required.InlineChoiceInteraction.Attr" Attribute Group is given in Table 4.3.331.

Table 4.3.331 XSD description for the "required.InlineChoiceInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | InlineChoiceInteraction.Type
Elements | inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="required.InlineChoiceInteraction.Attr">
        <xs:attribute name="required" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.332 "responseIdentifier.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "responseIdentifier.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.332.

Table 4.3.332 XSD description for the "responseIdentifier.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="responseIdentifier.BasePromptInteraction.Attr">
        <xs:attribute name="responseIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.333 "responseIdentifier.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "responseIdentifier.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.333.

Table 4.3.333 XSD description for the "responseIdentifier.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="responseIdentifier.BaseSequenceFull.Attr">
        <xs:attribute name="responseIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.334 "responseIdentifier.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "responseIdentifier.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.334.

Table 4.3.334 XSD description for the "responseIdentifier.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="responseIdentifier.BaseSequenceRIdent.Attr">
        <xs:attribute name="responseIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.335 "responseIdentifier.EndAttemptInteraction.Attr" Attribute Group Description

The XSD description for the "responseIdentifier.EndAttemptInteraction.Attr" Attribute Group is given in Table 4.3.335.

Table 4.3.335 XSD description for the "responseIdentifier.EndAttemptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | EndAttemptInteraction.Type
Elements | endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type
Source |
    <xs:attributeGroup name="responseIdentifier.EndAttemptInteraction.Attr">
        <xs:attribute name="responseIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.336 "responseIdentifier.TextEntryInteraction.Attr" Attribute Group Description

The XSD description for the "responseIdentifier.TextEntryInteraction.Attr" Attribute Group is given in Table 4.3.336.

Table 4.3.336 XSD description for the "responseIdentifier.TextEntryInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TextEntryInteraction.Type
Elements | textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="responseIdentifier.TextEntryInteraction.Attr">
        <xs:attribute name="responseIdentifier" use="required" type="UniqueIdentifierRef.Type" />
    </xs:attributeGroup>

### 4.3.337 "reverse.SliderInteraction.Attr" Attribute Group Description

The XSD description for the "reverse.SliderInteraction.Attr" Attribute Group is given in Table 4.3.337.

Table 4.3.337 XSD description for the "reverse.SliderInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SliderInteraction.Type
Elements | sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type
Source |
    <xs:attributeGroup name="reverse.SliderInteraction.Attr">
        <xs:attribute name="reverse" use="optional" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.338 "role.BasePromptInteraction.Attr" Attribute Group Description

The XSD description for the "role.BasePromptInteraction.Attr" Attribute Group is given in Table 4.3.338.

Table 4.3.338 XSD description for the "role.BasePromptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BasePromptInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type, choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type, drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type, extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type, gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type, graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type, hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type, hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type, matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type, mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type, orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type, selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type, sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type, uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="role.BasePromptInteraction.Attr">
        <xs:attribute name="role" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="article" />
                    <xs:enumeration value="columnheader" />
                    <xs:enumeration value="definition" />
                    <xs:enumeration value="directory" />
                    <xs:enumeration value="document" />
                    <xs:enumeration value="group" />
                    <xs:enumeration value="heading" />
                    <xs:enumeration value="img" />
                    <xs:enumeration value="list" />
                    <xs:enumeration value="listitem" />
                    <xs:enumeration value="math" />
                    <xs:enumeration value="note" />
                    <xs:enumeration value="presentation" />
                    <xs:enumeration value="region" />
                    <xs:enumeration value="row" />
                    <xs:enumeration value="rowgroup" />
                    <xs:enumeration value="rowheader" />
                    <xs:enumeration value="separator" />
                    <xs:enumeration value="toolbar" />
                    <xs:enumeration value="button" />
                    <xs:enumeration value="checkbox" />
                    <xs:enumeration value="gridcell" />
                    <xs:enumeration value="link" />
                    <xs:enumeration value="log" />
                    <xs:enumeration value="option" />
                    <xs:enumeration value="radio" />
                    <xs:enumeration value="slider" />
                    <xs:enumeration value="spinbutton" />
                    <xs:enumeration value="status" />
                    <xs:enumeration value="tab" />
                    <xs:enumeration value="tabpanel" />
                    <xs:enumeration value="textbox" />
                    <xs:enumeration value="timer" />
                    <xs:enumeration value="listbox" />
                    <xs:enumeration value="radiogroup" />
                    <xs:enumeration value="tablist" />
                    <xs:enumeration value="complementary" />
                    <xs:enumeration value="contentinfo" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.339 "role.BaseSequence.Attr" Attribute Group Description

The XSD description for the "role.BaseSequence.Attr" Attribute Group is given in Table 4.3.339.

Table 4.3.339 XSD description for the "role.BaseSequence.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequence.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type, caption/Table.Type, colgroup/Table.Type, gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type, gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type, infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type, inlineChoice/InlineChoiceInteraction.Type, li/OUL.Type, prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type, simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type, simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type, stimulusBody/AssessmentStimulus.Type, tbody/Table.Type, td/TR.Type, tfoot/Table.Type, th/TR.Type, thead/Table.Type, tr/TablePart.Type
Source |
    <xs:attributeGroup name="role.BaseSequence.Attr">
        <xs:attribute name="role" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="article" />
                    <xs:enumeration value="columnheader" />
                    <xs:enumeration value="definition" />
                    <xs:enumeration value="directory" />
                    <xs:enumeration value="document" />
                    <xs:enumeration value="group" />
                    <xs:enumeration value="heading" />
                    <xs:enumeration value="img" />
                    <xs:enumeration value="list" />
                    <xs:enumeration value="listitem" />
                    <xs:enumeration value="math" />
                    <xs:enumeration value="note" />
                    <xs:enumeration value="presentation" />
                    <xs:enumeration value="region" />
                    <xs:enumeration value="row" />
                    <xs:enumeration value="rowgroup" />
                    <xs:enumeration value="rowheader" />
                    <xs:enumeration value="separator" />
                    <xs:enumeration value="toolbar" />
                    <xs:enumeration value="button" />
                    <xs:enumeration value="checkbox" />
                    <xs:enumeration value="gridcell" />
                    <xs:enumeration value="link" />
                    <xs:enumeration value="log" />
                    <xs:enumeration value="option" />
                    <xs:enumeration value="radio" />
                    <xs:enumeration value="slider" />
                    <xs:enumeration value="spinbutton" />
                    <xs:enumeration value="status" />
                    <xs:enumeration value="tab" />
                    <xs:enumeration value="tabpanel" />
                    <xs:enumeration value="textbox" />
                    <xs:enumeration value="timer" />
                    <xs:enumeration value="listbox" />
                    <xs:enumeration value="radiogroup" />
                    <xs:enumeration value="tablist" />
                    <xs:enumeration value="complementary" />
                    <xs:enumeration value="contentinfo" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.340 "role.BaseSequenceFull.Attr" Attribute Group Description

The XSD description for the "role.BaseSequenceFull.Attr" Attribute Group is given in Table 4.3.340.

Table 4.3.340 XSD description for the "role.BaseSequenceFull.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceFull.Type
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type, graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type, graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type, inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="role.BaseSequenceFull.Attr">
        <xs:attribute name="role" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="article" />
                    <xs:enumeration value="columnheader" />
                    <xs:enumeration value="definition" />
                    <xs:enumeration value="directory" />
                    <xs:enumeration value="document" />
                    <xs:enumeration value="group" />
                    <xs:enumeration value="heading" />
                    <xs:enumeration value="img" />
                    <xs:enumeration value="list" />
                    <xs:enumeration value="listitem" />
                    <xs:enumeration value="math" />
                    <xs:enumeration value="note" />
                    <xs:enumeration value="presentation" />
                    <xs:enumeration value="region" />
                    <xs:enumeration value="row" />
                    <xs:enumeration value="rowgroup" />
                    <xs:enumeration value="rowheader" />
                    <xs:enumeration value="separator" />
                    <xs:enumeration value="toolbar" />
                    <xs:enumeration value="button" />
                    <xs:enumeration value="checkbox" />
                    <xs:enumeration value="gridcell" />
                    <xs:enumeration value="link" />
                    <xs:enumeration value="log" />
                    <xs:enumeration value="option" />
                    <xs:enumeration value="radio" />
                    <xs:enumeration value="slider" />
                    <xs:enumeration value="spinbutton" />
                    <xs:enumeration value="status" />
                    <xs:enumeration value="tab" />
                    <xs:enumeration value="tabpanel" />
                    <xs:enumeration value="textbox" />
                    <xs:enumeration value="timer" />
                    <xs:enumeration value="listbox" />
                    <xs:enumeration value="radiogroup" />
                    <xs:enumeration value="tablist" />
                    <xs:enumeration value="complementary" />
                    <xs:enumeration value="contentinfo" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.341 "role.BaseSequenceRIdent.Attr" Attribute Group Description

The XSD description for the "role.BaseSequenceRIdent.Attr" Attribute Group is given in Table 4.3.341.

Table 4.3.341 XSD description for the "role.BaseSequenceRIdent.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceRIdent.Type
Elements | positionObjectInteraction/PositionObjectStage.Type
Source |
    <xs:attributeGroup name="role.BaseSequenceRIdent.Attr">
        <xs:attribute name="role" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="article" />
                    <xs:enumeration value="columnheader" />
                    <xs:enumeration value="definition" />
                    <xs:enumeration value="directory" />
                    <xs:enumeration value="document" />
                    <xs:enumeration value="group" />
                    <xs:enumeration value="heading" />
                    <xs:enumeration value="img" />
                    <xs:enumeration value="list" />
                    <xs:enumeration value="listitem" />
                    <xs:enumeration value="math" />
                    <xs:enumeration value="note" />
                    <xs:enumeration value="presentation" />
                    <xs:enumeration value="region" />
                    <xs:enumeration value="row" />
                    <xs:enumeration value="rowgroup" />
                    <xs:enumeration value="rowheader" />
                    <xs:enumeration value="separator" />
                    <xs:enumeration value="toolbar" />
                    <xs:enumeration value="button" />
                    <xs:enumeration value="checkbox" />
                    <xs:enumeration value="gridcell" />
                    <xs:enumeration value="link" />
                    <xs:enumeration value="log" />
                    <xs:enumeration value="option" />
                    <xs:enumeration value="radio" />
                    <xs:enumeration value="slider" />
                    <xs:enumeration value="spinbutton" />
                    <xs:enumeration value="status" />
                    <xs:enumeration value="tab" />
                    <xs:enumeration value="tabpanel" />
                    <xs:enumeration value="textbox" />
                    <xs:enumeration value="timer" />
                    <xs:enumeration value="listbox" />
                    <xs:enumeration value="radiogroup" />
                    <xs:enumeration value="tablist" />
                    <xs:enumeration value="complementary" />
                    <xs:enumeration value="contentinfo" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.342 "role.BaseSequenceXBase.Attr" Attribute Group Description

The XSD description for the "role.BaseSequenceXBase.Attr" Attribute Group is given in Table 4.3.342.

Table 4.3.342 XSD description for the "role.BaseSequenceXBase.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBase.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type, abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dd/DL.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type, dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type, dt/DL.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type, feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, label/InlineChoiceInteraction.Type, object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type, ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type, rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type, templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type, templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type, templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type, templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="role.BaseSequenceXBase.Attr">
        <xs:attribute name="role" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="article" />
                    <xs:enumeration value="columnheader" />
                    <xs:enumeration value="definition" />
                    <xs:enumeration value="directory" />
                    <xs:enumeration value="document" />
                    <xs:enumeration value="group" />
                    <xs:enumeration value="heading" />
                    <xs:enumeration value="img" />
                    <xs:enumeration value="list" />
                    <xs:enumeration value="listitem" />
                    <xs:enumeration value="math" />
                    <xs:enumeration value="note" />
                    <xs:enumeration value="presentation" />
                    <xs:enumeration value="region" />
                    <xs:enumeration value="row" />
                    <xs:enumeration value="rowgroup" />
                    <xs:enumeration value="rowheader" />
                    <xs:enumeration value="separator" />
                    <xs:enumeration value="toolbar" />
                    <xs:enumeration value="button" />
                    <xs:enumeration value="checkbox" />
                    <xs:enumeration value="gridcell" />
                    <xs:enumeration value="link" />
                    <xs:enumeration value="log" />
                    <xs:enumeration value="option" />
                    <xs:enumeration value="radio" />
                    <xs:enumeration value="slider" />
                    <xs:enumeration value="spinbutton" />
                    <xs:enumeration value="status" />
                    <xs:enumeration value="tab" />
                    <xs:enumeration value="tabpanel" />
                    <xs:enumeration value="textbox" />
                    <xs:enumeration value="timer" />
                    <xs:enumeration value="listbox" />
                    <xs:enumeration value="radiogroup" />
                    <xs:enumeration value="tablist" />
                    <xs:enumeration value="complementary" />
                    <xs:enumeration value="contentinfo" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.343 "role.BaseSequenceXBaseEmpty.Attr" Attribute Group Description

The XSD description for the "role.BaseSequenceXBaseEmpty.Attr" Attribute Group is given in Table 4.3.343.

Table 4.3.343 XSD description for the "role.BaseSequenceXBaseEmpty.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BaseSequenceXBaseEmpty.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type, br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type, col/ColGroup.Type, col/Table.Type, endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type, gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type, hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type, hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type, img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type, textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="role.BaseSequenceXBaseEmpty.Attr">
        <xs:attribute name="role" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="article" />
                    <xs:enumeration value="columnheader" />
                    <xs:enumeration value="definition" />
                    <xs:enumeration value="directory" />
                    <xs:enumeration value="document" />
                    <xs:enumeration value="group" />
                    <xs:enumeration value="heading" />
                    <xs:enumeration value="img" />
                    <xs:enumeration value="list" />
                    <xs:enumeration value="listitem" />
                    <xs:enumeration value="math" />
                    <xs:enumeration value="note" />
                    <xs:enumeration value="presentation" />
                    <xs:enumeration value="region" />
                    <xs:enumeration value="row" />
                    <xs:enumeration value="rowgroup" />
                    <xs:enumeration value="rowheader" />
                    <xs:enumeration value="separator" />
                    <xs:enumeration value="toolbar" />
                    <xs:enumeration value="button" />
                    <xs:enumeration value="checkbox" />
                    <xs:enumeration value="gridcell" />
                    <xs:enumeration value="link" />
                    <xs:enumeration value="log" />
                    <xs:enumeration value="option" />
                    <xs:enumeration value="radio" />
                    <xs:enumeration value="slider" />
                    <xs:enumeration value="spinbutton" />
                    <xs:enumeration value="status" />
                    <xs:enumeration value="tab" />
                    <xs:enumeration value="tabpanel" />
                    <xs:enumeration value="textbox" />
                    <xs:enumeration value="timer" />
                    <xs:enumeration value="listbox" />
                    <xs:enumeration value="radiogroup" />
                    <xs:enumeration value="tablist" />
                    <xs:enumeration value="complementary" />
                    <xs:enumeration value="contentinfo" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.344 "roundingMode.EqualRounded.Attr" Attribute Group Description

The XSD description for the "roundingMode.EqualRounded.Attr" Attribute Group is given in Table 4.3.344.

Table 4.3.344 XSD description for the "roundingMode.EqualRounded.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | EqualRounded.Type
Elements | equalRounded/AnyN.Type, equalRounded/BranchRule.Type, equalRounded/CustomOperator.Type, equalRounded/Equal.Type, equalRounded/EqualRounded.Type, equalRounded/FieldValue.Type, equalRounded/Index.Type, equalRounded/Inside.Type, equalRounded/Logic0toMany.Type, equalRounded/Logic1toMany.Type, equalRounded/LogicPair.Type, equalRounded/LogicSingle.Type, equalRounded/LookupOutcomeValue.Type, equalRounded/MathOperator.Type, equalRounded/OutcomeIf.Type, equalRounded/PatternMatch.Type, equalRounded/Repeat.Type, equalRounded/ResponseIf.Type, equalRounded/RoundTo.Type, equalRounded/SetValue.Type, equalRounded/StatsOperator.Type, equalRounded/StringMatch.Type, equalRounded/Substring.Type, equalRounded/TemplateConstraint.Type, equalRounded/TemplateDefault.Type, equalRounded/TemplateIf.Type
Source |
    <xs:attributeGroup name="roundingMode.EqualRounded.Attr">
        <xs:attribute name="roundingMode" use="optional" default="significantFigures">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="decimalPlaces" />
                    <xs:enumeration value="significantFigures" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.345 "roundingMode.RoundTo.Attr" Attribute Group Description

The XSD description for the "roundingMode.RoundTo.Attr" Attribute Group is given in Table 4.3.345.

Table 4.3.345 XSD description for the "roundingMode.RoundTo.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | RoundTo.Type
Elements | roundTo/AnyN.Type, roundTo/BranchRule.Type, roundTo/CustomOperator.Type, roundTo/Equal.Type, roundTo/EqualRounded.Type, roundTo/FieldValue.Type, roundTo/Index.Type, roundTo/Inside.Type, roundTo/Logic0toMany.Type, roundTo/Logic1toMany.Type, roundTo/LogicPair.Type, roundTo/LogicSingle.Type, roundTo/LookupOutcomeValue.Type, roundTo/MathOperator.Type, roundTo/OutcomeIf.Type, roundTo/PatternMatch.Type, roundTo/Repeat.Type, roundTo/ResponseIf.Type, roundTo/RoundTo.Type, roundTo/SetValue.Type, roundTo/StatsOperator.Type, roundTo/StringMatch.Type, roundTo/Substring.Type, roundTo/TemplateConstraint.Type, roundTo/TemplateDefault.Type, roundTo/TemplateIf.Type, roundTo/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="roundingMode.RoundTo.Attr">
        <xs:attribute name="roundingMode" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="decimalPlaces" />
                    <xs:enumeration value="significantFigures" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.346 "rowspan.TDH.Attr" Attribute Group Description

The XSD description for the "rowspan.TDH.Attr" Attribute Group is given in Table 4.3.346.

Table 4.3.346 XSD description for the "rowspan.TDH.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TDH.Type
Elements | td/TR.Type, th/TR.Type
Source |
    <xs:attributeGroup name="rowspan.TDH.Attr">
        <xs:attribute name="rowspan" use="optional" type="xs:int" />
    </xs:attributeGroup>

### 4.3.347 "scope.TDH.Attr" Attribute Group Description

The XSD description for the "scope.TDH.Attr" Attribute Group is given in Table 4.3.347.

Table 4.3.347 XSD description for the "scope.TDH.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TDH.Type
Elements | td/TR.Type, th/TR.Type
Source |
    <xs:attributeGroup name="scope.TDH.Attr">
        <xs:attribute name="scope" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="col" />
                    <xs:enumeration value="colgroup" />
                    <xs:enumeration value="row" />
                    <xs:enumeration value="rowgroup" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.348 "sectionIdentifier.Number.Attr" Attribute Group Description

The XSD description for the "sectionIdentifier.Number.Attr" Attribute Group is given in Table 4.3.348.

Table 4.3.348 XSD description for the "sectionIdentifier.Number.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Number.Type
Elements | numberIncorrect/AnyN.Type, numberIncorrect/BranchRule.Type, numberIncorrect/CustomOperator.Type, numberIncorrect/Equal.Type, numberIncorrect/EqualRounded.Type, numberIncorrect/FieldValue.Type, numberIncorrect/Index.Type, numberIncorrect/Inside.Type, numberIncorrect/Logic0toMany.Type, numberIncorrect/Logic1toMany.Type, numberIncorrect/LogicPair.Type, numberIncorrect/LogicSingle.Type, numberIncorrect/LookupOutcomeValue.Type, numberIncorrect/MathOperator.Type, numberIncorrect/OutcomeIf.Type, numberIncorrect/PatternMatch.Type, numberIncorrect/Repeat.Type, numberIncorrect/ResponseIf.Type, numberIncorrect/RoundTo.Type, numberIncorrect/SetValue.Type, numberIncorrect/StatsOperator.Type, numberIncorrect/StringMatch.Type, numberIncorrect/Substring.Type, numberIncorrect/TemplateConstraint.Type, numberIncorrect/TemplateDefault.Type, numberIncorrect/TemplateIf.Type, numberCorrect/AnyN.Type, numberCorrect/BranchRule.Type, numberCorrect/CustomOperator.Type, numberCorrect/Equal.Type, numberCorrect/EqualRounded.Type, numberCorrect/FieldValue.Type, numberCorrect/Index.Type, numberCorrect/Inside.Type, numberCorrect/Logic0toMany.Type, numberCorrect/Logic1toMany.Type, numberCorrect/LogicPair.Type, numberCorrect/LogicSingle.Type, numberCorrect/LookupOutcomeValue.Type, numberCorrect/MathOperator.Type, numberCorrect/OutcomeIf.Type, numberCorrect/PatternMatch.Type, numberCorrect/Repeat.Type, numberCorrect/ResponseIf.Type, numberCorrect/RoundTo.Type, numberCorrect/SetValue.Type, numberCorrect/StatsOperator.Type, numberCorrect/StringMatch.Type, numberCorrect/Substring.Type, numberCorrect/TemplateConstraint.Type, numberCorrect/TemplateDefault.Type, numberCorrect/TemplateIf.Type, numberPresented/AnyN.Type, numberPresented/BranchRule.Type, numberPresented/CustomOperator.Type, numberPresented/Equal.Type, numberPresented/EqualRounded.Type, numberPresented/FieldValue.Type, numberPresented/Index.Type, numberPresented/Inside.Type, numberPresented/Logic0toMany.Type, numberPresented/Logic1toMany.Type, numberPresented/LogicPair.Type, numberPresented/LogicSingle.Type, numberPresented/LookupOutcomeValue.Type, numberPresented/MathOperator.Type, numberPresented/OutcomeIf.Type, numberPresented/PatternMatch.Type, numberPresented/Repeat.Type, numberPresented/ResponseIf.Type, numberPresented/RoundTo.Type, numberPresented/SetValue.Type, numberPresented/StatsOperator.Type, numberPresented/StringMatch.Type, numberPresented/Substring.Type, numberPresented/TemplateConstraint.Type, numberPresented/TemplateDefault.Type, numberPresented/TemplateIf.Type, numberResponded/AnyN.Type, numberResponded/BranchRule.Type, numberResponded/CustomOperator.Type, numberResponded/Equal.Type, numberResponded/EqualRounded.Type, numberResponded/FieldValue.Type, numberResponded/Index.Type, numberResponded/Inside.Type, numberResponded/Logic0toMany.Type, numberResponded/Logic1toMany.Type, numberResponded/LogicPair.Type, numberResponded/LogicSingle.Type, numberResponded/LookupOutcomeValue.Type, numberResponded/MathOperator.Type, numberResponded/OutcomeIf.Type, numberResponded/PatternMatch.Type, numberResponded/Repeat.Type, numberResponded/ResponseIf.Type, numberResponded/RoundTo.Type, numberResponded/SetValue.Type, numberResponded/StatsOperator.Type, numberResponded/StringMatch.Type, numberResponded/Substring.Type, numberResponded/TemplateConstraint.Type, numberResponded/TemplateDefault.Type, numberResponded/TemplateIf.Type, numberSelected/AnyN.Type, numberSelected/BranchRule.Type, numberSelected/CustomOperator.Type, numberSelected/Equal.Type, numberSelected/EqualRounded.Type, numberSelected/FieldValue.Type, numberSelected/Index.Type, numberSelected/Inside.Type, numberSelected/Logic0toMany.Type, numberSelected/Logic1toMany.Type, numberSelected/LogicPair.Type, numberSelected/LogicSingle.Type, numberSelected/LookupOutcomeValue.Type, numberSelected/MathOperator.Type, numberSelected/OutcomeIf.Type, numberSelected/PatternMatch.Type, numberSelected/Repeat.Type, numberSelected/ResponseIf.Type, numberSelected/RoundTo.Type, numberSelected/SetValue.Type, numberSelected/StatsOperator.Type, numberSelected/StringMatch.Type, numberSelected/Substring.Type, numberSelected/TemplateConstraint.Type, numberSelected/TemplateDefault.Type, numberSelected/TemplateIf.Type, numberIncorrect/NumericLogic1toMany.Type, numberCorrect/NumericLogic1toMany.Type, numberPresented/NumericLogic1toMany.Type, numberResponded/NumericLogic1toMany.Type, numberSelected/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="sectionIdentifier.Number.Attr">
        <xs:attribute name="sectionIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.349 "sectionIdentifier.OutcomeMinMax.Attr" Attribute Group Description

The XSD description for the "sectionIdentifier.OutcomeMinMax.Attr" Attribute Group is given in Table 4.3.349.

Table 4.3.349 XSD description for the "sectionIdentifier.OutcomeMinMax.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | OutcomeMinMax.Type
Elements | outcomeMinimum/AnyN.Type, outcomeMinimum/BranchRule.Type, outcomeMinimum/CustomOperator.Type, outcomeMinimum/Equal.Type, outcomeMinimum/EqualRounded.Type, outcomeMinimum/FieldValue.Type, outcomeMinimum/Index.Type, outcomeMinimum/Inside.Type, outcomeMinimum/Logic0toMany.Type, outcomeMinimum/Logic1toMany.Type, outcomeMinimum/LogicPair.Type, outcomeMinimum/LogicSingle.Type, outcomeMinimum/LookupOutcomeValue.Type, outcomeMinimum/MathOperator.Type, outcomeMinimum/OutcomeIf.Type, outcomeMinimum/PatternMatch.Type, outcomeMinimum/Repeat.Type, outcomeMinimum/ResponseIf.Type, outcomeMinimum/RoundTo.Type, outcomeMinimum/SetValue.Type, outcomeMinimum/StatsOperator.Type, outcomeMinimum/StringMatch.Type, outcomeMinimum/Substring.Type, outcomeMinimum/TemplateConstraint.Type, outcomeMinimum/TemplateDefault.Type, outcomeMinimum/TemplateIf.Type, outcomeMaximum/AnyN.Type, outcomeMaximum/BranchRule.Type, outcomeMaximum/CustomOperator.Type, outcomeMaximum/Equal.Type, outcomeMaximum/EqualRounded.Type, outcomeMaximum/FieldValue.Type, outcomeMaximum/Index.Type, outcomeMaximum/Inside.Type, outcomeMaximum/Logic0toMany.Type, outcomeMaximum/Logic1toMany.Type, outcomeMaximum/LogicPair.Type, outcomeMaximum/LogicSingle.Type, outcomeMaximum/LookupOutcomeValue.Type, outcomeMaximum/MathOperator.Type, outcomeMaximum/OutcomeIf.Type, outcomeMaximum/PatternMatch.Type, outcomeMaximum/Repeat.Type, outcomeMaximum/ResponseIf.Type, outcomeMaximum/RoundTo.Type, outcomeMaximum/SetValue.Type, outcomeMaximum/StatsOperator.Type, outcomeMaximum/StringMatch.Type, outcomeMaximum/Substring.Type, outcomeMaximum/TemplateConstraint.Type, outcomeMaximum/TemplateDefault.Type, outcomeMaximum/TemplateIf.Type, outcomeMinimum/NumericLogic1toMany.Type, outcomeMaximum/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="sectionIdentifier.OutcomeMinMax.Attr">
        <xs:attribute name="sectionIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.350 "sectionIdentifier.TestVariables.Attr" Attribute Group Description

The XSD description for the "sectionIdentifier.TestVariables.Attr" Attribute Group is given in Table 4.3.350.

Table 4.3.350 XSD description for the "sectionIdentifier.TestVariables.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TestVariables.Type
Elements | testVariables/AnyN.Type, testVariables/BranchRule.Type, testVariables/CustomOperator.Type, testVariables/Equal.Type, testVariables/EqualRounded.Type, testVariables/FieldValue.Type, testVariables/Index.Type, testVariables/Inside.Type, testVariables/Logic0toMany.Type, testVariables/Logic1toMany.Type, testVariables/LogicPair.Type, testVariables/LogicSingle.Type, testVariables/LookupOutcomeValue.Type, testVariables/MathOperator.Type, testVariables/OutcomeIf.Type, testVariables/PatternMatch.Type, testVariables/Repeat.Type, testVariables/ResponseIf.Type, testVariables/RoundTo.Type, testVariables/SetValue.Type, testVariables/StatsOperator.Type, testVariables/StringMatch.Type, testVariables/Substring.Type, testVariables/TemplateConstraint.Type, testVariables/TemplateDefault.Type, testVariables/TemplateIf.Type, testVariables/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="sectionIdentifier.TestVariables.Attr">
        <xs:attribute name="sectionIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.351 "select.Selection.Attr" Attribute Group Description

The XSD description for the "select.Selection.Attr" Attribute Group is given in Table 4.3.351.

Table 4.3.351 XSD description for the "select.Selection.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Selection.Type
Elements | selection/AssessmentSection.Type
Source |
    <xs:attributeGroup name="select.Selection.Attr">
        <xs:attribute name="select" use="required" type="xs:int" />
    </xs:attributeGroup>

### 4.3.352 "shape.AreaMapEntry.Attr" Attribute Group Description

The XSD description for the "shape.AreaMapEntry.Attr" Attribute Group is given in Table 4.3.352.

Table 4.3.352 XSD description for the "shape.AreaMapEntry.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AreaMapEntry.Type
Elements | areaMapEntry/AreaMapping.Type
Source |
    <xs:attributeGroup name="shape.AreaMapEntry.Attr">
        <xs:attribute name="shape" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="circle" />
                    <xs:enumeration value="default" />
                    <xs:enumeration value="ellipse" />
                    <xs:enumeration value="poly" />
                    <xs:enumeration value="rect" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.353 "shape.AssociableHotspot.Attr" Attribute Group Description

The XSD description for the "shape.AssociableHotspot.Attr" Attribute Group is given in Table 4.3.353.

Table 4.3.353 XSD description for the "shape.AssociableHotspot.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssociableHotspot.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="shape.AssociableHotspot.Attr">
        <xs:attribute name="shape" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="circle" />
                    <xs:enumeration value="default" />
                    <xs:enumeration value="ellipse" />
                    <xs:enumeration value="poly" />
                    <xs:enumeration value="rect" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.354 "shape.HotspotChoice.Attr" Attribute Group Description

The XSD description for the "shape.HotspotChoice.Attr" Attribute Group is given in Table 4.3.354.

Table 4.3.354 XSD description for the "shape.HotspotChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | HotspotChoice.Type
Elements | hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type
Source |
    <xs:attributeGroup name="shape.HotspotChoice.Attr">
        <xs:attribute name="shape" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="circle" />
                    <xs:enumeration value="default" />
                    <xs:enumeration value="ellipse" />
                    <xs:enumeration value="poly" />
                    <xs:enumeration value="rect" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.355 "shape.Inside.Attr" Attribute Group Description

The XSD description for the "shape.Inside.Attr" Attribute Group is given in Table 4.3.355.

Table 4.3.355 XSD description for the "shape.Inside.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Inside.Type
Elements | inside/AnyN.Type, inside/BranchRule.Type, inside/CustomOperator.Type, inside/Equal.Type, inside/EqualRounded.Type, inside/FieldValue.Type, inside/Index.Type, inside/Inside.Type, inside/Logic0toMany.Type, inside/Logic1toMany.Type, inside/LogicPair.Type, inside/LogicSingle.Type, inside/LookupOutcomeValue.Type, inside/MathOperator.Type, inside/OutcomeIf.Type, inside/PatternMatch.Type, inside/Repeat.Type, inside/ResponseIf.Type, inside/RoundTo.Type, inside/SetValue.Type, inside/StatsOperator.Type, inside/StringMatch.Type, inside/Substring.Type, inside/TemplateConstraint.Type, inside/TemplateDefault.Type, inside/TemplateIf.Type
Source |
    <xs:attributeGroup name="shape.Inside.Attr">
        <xs:attribute name="shape" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="circle" />
                    <xs:enumeration value="default" />
                    <xs:enumeration value="ellipse" />
                    <xs:enumeration value="poly" />
                    <xs:enumeration value="rect" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.356 "showFeedback.ItemSessionControl.Attr" Attribute Group Description

The XSD description for the "showFeedback.ItemSessionControl.Attr" Attribute Group is given in Table 4.3.356.

Table 4.3.356 XSD description for the "showFeedback.ItemSessionControl.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ItemSessionControl.Type
Elements | itemSessionControl/AssessmentItemRef.Type, itemSessionControl/AssessmentSection.Type, itemSessionControl/TestPart.Type
Source |
    <xs:attributeGroup name="showFeedback.ItemSessionControl.Attr">
        <xs:attribute name="showFeedback" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.357 "showHide.AssociableHotspot.Attr" Attribute Group Description

The XSD description for the "showHide.AssociableHotspot.Attr" Attribute Group is given in Table 4.3.357.

Table 4.3.357 XSD description for the "showHide.AssociableHotspot.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssociableHotspot.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="showHide.AssociableHotspot.Attr">
        <xs:attribute name="showHide" use="optional" default="show">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.358 "showHide.FeedbackBlock.Attr" Attribute Group Description

The XSD description for the "showHide.FeedbackBlock.Attr" Attribute Group is given in Table 4.3.358.

Table 4.3.358 XSD description for the "showHide.FeedbackBlock.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | FeedbackBlock.Type
Elements | feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type
Source |
    <xs:attributeGroup name="showHide.FeedbackBlock.Attr">
        <xs:attribute name="showHide" use="optional" default="show">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.359 "showHide.FeedbackInline.Attr" Attribute Group Description

The XSD description for the "showHide.FeedbackInline.Attr" Attribute Group is given in Table 4.3.359.

Table 4.3.359 XSD description for the "showHide.FeedbackInline.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | FeedbackInline.Type
Elements | feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type
Source |
    <xs:attributeGroup name="showHide.FeedbackInline.Attr">
        <xs:attribute name="showHide" use="optional" default="show">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.360 "showHide.Gap.Attr" Attribute Group Description

The XSD description for the "showHide.Gap.Attr" Attribute Group is given in Table 4.3.360.

Table 4.3.360 XSD description for the "showHide.Gap.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Gap.Type
Elements | gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type
Source |
    <xs:attributeGroup name="showHide.Gap.Attr">
        <xs:attribute name="showHide" use="optional" default="show">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.361 "showHide.GapImg.Attr" Attribute Group Description

The XSD description for the "showHide.GapImg.Attr" Attribute Group is given in Table 4.3.361.

Table 4.3.361 XSD description for the "showHide.GapImg.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapImg.Type
Elements | gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="showHide.GapImg.Attr">
        <xs:attribute name="showHide" use="optional" default="show">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.362 "showHide.GapText.Attr" Attribute Group Description

The XSD description for the "showHide.GapText.Attr" Attribute Group is given in Table 4.3.362.

Table 4.3.362 XSD description for the "showHide.GapText.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapText.Type
Elements | gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="showHide.GapText.Attr">
        <xs:attribute name="showHide" use="optional" default="show">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.363 "showHide.HotText.Attr" Attribute Group Description

The XSD description for the "showHide.HotText.Attr" Attribute Group is given in Table 4.3.363.

Table 4.3.363 XSD description for the "showHide.HotText.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | HotText.Type
Elements | hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type
Source |
    <xs:attributeGroup name="showHide.HotText.Attr">
        <xs:attribute name="showHide" use="optional" default="show">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.364 "showHide.HotspotChoice.Attr" Attribute Group Description

The XSD description for the "showHide.HotspotChoice.Attr" Attribute Group is given in Table 4.3.364.

Table 4.3.364 XSD description for the "showHide.HotspotChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | HotspotChoice.Type
Elements | hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type
Source |
    <xs:attributeGroup name="showHide.HotspotChoice.Attr">
        <xs:attribute name="showHide" use="optional" default="show">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.365 "showHide.InlineChoice.Attr" Attribute Group Description

The XSD description for the "showHide.InlineChoice.Attr" Attribute Group is given in Table 4.3.365.

Table 4.3.365 XSD description for the "showHide.InlineChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | InlineChoice.Type
Elements | inlineChoice/InlineChoiceInteraction.Type
Source |
    <xs:attributeGroup name="showHide.InlineChoice.Attr">
        <xs:attribute name="showHide" use="optional" default="show">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.366 "showHide.ModalFeedback.Attr" Attribute Group Description

The XSD description for the "showHide.ModalFeedback.Attr" Attribute Group is given in Table 4.3.366.

Table 4.3.366 XSD description for the "showHide.ModalFeedback.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ModalFeedback.Type
Elements | modalFeedback/AssessmentItem.Type
Source |
    <xs:attributeGroup name="showHide.ModalFeedback.Attr">
        <xs:attribute name="showHide" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.367 "showHide.RubricBlockTemplateBlock.Attr" Attribute Group Description

The XSD description for the "showHide.RubricBlockTemplateBlock.Attr" Attribute Group is given in Table 4.3.367.

Table 4.3.367 XSD description for the "showHide.RubricBlockTemplateBlock.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | RubricBlockTemplateBlock.Type
Elements | templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type
Source |
    <xs:attributeGroup name="showHide.RubricBlockTemplateBlock.Attr">
        <xs:attribute name="showHide" use="optional" default="show">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.368 "showHide.RubricBlockTemplateInline.Attr" Attribute Group Description

The XSD description for the "showHide.RubricBlockTemplateInline.Attr" Attribute Group is given in Table 4.3.368.

Table 4.3.368 XSD description for the "showHide.RubricBlockTemplateInline.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | RubricBlockTemplateInline.Type
Elements | templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="showHide.RubricBlockTemplateInline.Attr">
        <xs:attribute name="showHide" use="optional" default="show">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.369 "showHide.SimpleAssociableChoice.Attr" Attribute Group Description

The XSD description for the "showHide.SimpleAssociableChoice.Attr" Attribute Group is given in Table 4.3.369.

Table 4.3.369 XSD description for the "showHide.SimpleAssociableChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SimpleAssociableChoice.Type
Elements | simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type
Source |
    <xs:attributeGroup name="showHide.SimpleAssociableChoice.Attr">
        <xs:attribute name="showHide" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.370 "showHide.SimpleChoice.Attr" Attribute Group Description

The XSD description for the "showHide.SimpleChoice.Attr" Attribute Group is given in Table 4.3.370.

Table 4.3.370 XSD description for the "showHide.SimpleChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SimpleChoice.Type
Elements | simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type
Source |
    <xs:attributeGroup name="showHide.SimpleChoice.Attr">
        <xs:attribute name="showHide" use="optional" default="show">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.371 "showHide.TemplateBlock.Attr" Attribute Group Description

The XSD description for the "showHide.TemplateBlock.Attr" Attribute Group is given in Table 4.3.371.

Table 4.3.371 XSD description for the "showHide.TemplateBlock.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TemplateBlock.Type
Elements | templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type
Source |
    <xs:attributeGroup name="showHide.TemplateBlock.Attr">
        <xs:attribute name="showHide" use="optional" default="show">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.372 "showHide.TemplateBlockFeedbackBlock.Attr" Attribute Group Description

The XSD description for the "showHide.TemplateBlockFeedbackBlock.Attr" Attribute Group is given in Table 4.3.372.

Table 4.3.372 XSD description for the "showHide.TemplateBlockFeedbackBlock.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TemplateBlockFeedbackBlock.Type
Elements | feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type
Source |
    <xs:attributeGroup name="showHide.TemplateBlockFeedbackBlock.Attr">
        <xs:attribute name="showHide" use="optional" default="show">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.373 "showHide.TemplateInline.Attr" Attribute Group Description

The XSD description for the "showHide.TemplateInline.Attr" Attribute Group is given in Table 4.3.373.

Table 4.3.373 XSD description for the "showHide.TemplateInline.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TemplateInline.Type
Elements | templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type
Source |
    <xs:attributeGroup name="showHide.TemplateInline.Attr">
        <xs:attribute name="showHide" use="optional" default="show">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.374 "showHide.TestFeedback.Attr" Attribute Group Description

The XSD description for the "showHide.TestFeedback.Attr" Attribute Group is given in Table 4.3.374.

Table 4.3.374 XSD description for the "showHide.TestFeedback.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TestFeedback.Type
Elements | testFeedback/AssessmentTest.Type, testFeedback/TestPart.Type
Source |
    <xs:attributeGroup name="showHide.TestFeedback.Attr">
        <xs:attribute name="showHide" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="show" />
                    <xs:enumeration value="hide" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.375 "showSolution.ItemSessionControl.Attr" Attribute Group Description

The XSD description for the "showSolution.ItemSessionControl.Attr" Attribute Group is given in Table 4.3.375.

Table 4.3.375 XSD description for the "showSolution.ItemSessionControl.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ItemSessionControl.Type
Elements | itemSessionControl/AssessmentItemRef.Type, itemSessionControl/AssessmentSection.Type, itemSessionControl/TestPart.Type
Source |
    <xs:attributeGroup name="showSolution.ItemSessionControl.Attr">
        <xs:attribute name="showSolution" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.376 "shuffle.AssociateInteraction.Attr" Attribute Group Description

The XSD description for the "shuffle.AssociateInteraction.Attr" Attribute Group is given in Table 4.3.376.

Table 4.3.376 XSD description for the "shuffle.AssociateInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssociateInteraction.Type
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type
Source |
    <xs:attributeGroup name="shuffle.AssociateInteraction.Attr">
        <xs:attribute name="shuffle" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.377 "shuffle.ChoiceInteraction.Attr" Attribute Group Description

The XSD description for the "shuffle.ChoiceInteraction.Attr" Attribute Group is given in Table 4.3.377.

Table 4.3.377 XSD description for the "shuffle.ChoiceInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ChoiceInteraction.Type
Elements | choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type
Source |
    <xs:attributeGroup name="shuffle.ChoiceInteraction.Attr">
        <xs:attribute name="shuffle" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.378 "shuffle.GapMatchInteraction.Attr" Attribute Group Description

The XSD description for the "shuffle.GapMatchInteraction.Attr" Attribute Group is given in Table 4.3.378.

Table 4.3.378 XSD description for the "shuffle.GapMatchInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapMatchInteraction.Type
Elements | gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type
Source |
    <xs:attributeGroup name="shuffle.GapMatchInteraction.Attr">
        <xs:attribute name="shuffle" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.379 "shuffle.InlineChoiceInteraction.Attr" Attribute Group Description

The XSD description for the "shuffle.InlineChoiceInteraction.Attr" Attribute Group is given in Table 4.3.379.

Table 4.3.379 XSD description for the "shuffle.InlineChoiceInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | InlineChoiceInteraction.Type
Elements | inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Source |
    <xs:attributeGroup name="shuffle.InlineChoiceInteraction.Attr">
        <xs:attribute name="shuffle" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.380 "shuffle.MatchInteraction.Attr" Attribute Group Description

The XSD description for the "shuffle.MatchInteraction.Attr" Attribute Group is given in Table 4.3.380.

Table 4.3.380 XSD description for the "shuffle.MatchInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MatchInteraction.Type
Elements | matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type
Source |
    <xs:attributeGroup name="shuffle.MatchInteraction.Attr">
        <xs:attribute name="shuffle" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.381 "shuffle.OrderInteraction.Attr" Attribute Group Description

The XSD description for the "shuffle.OrderInteraction.Attr" Attribute Group is given in Table 4.3.381.

Table 4.3.381 XSD description for the "shuffle.OrderInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | OrderInteraction.Type
Elements | orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type
Source |
    <xs:attributeGroup name="shuffle.OrderInteraction.Attr">
        <xs:attribute name="shuffle" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.382 "shuffle.Ordering.Attr" Attribute Group Description

The XSD description for the "shuffle.Ordering.Attr" Attribute Group is given in Table 4.3.382.

Table 4.3.382 XSD description for the "shuffle.Ordering.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Ordering.Type
Elements | ordering/AssessmentSection.Type
Source |
    <xs:attributeGroup name="shuffle.Ordering.Attr">
        <xs:attribute name="shuffle" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.383 "sourceIdentifier.VariableMapping.Attr" Attribute Group Description

The XSD description for the "sourceIdentifier.VariableMapping.Attr" Attribute Group is given in Table 4.3.383.

Table 4.3.383 XSD description for the "sourceIdentifier.VariableMapping.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | VariableMapping.Type
Elements | variableMapping/AssessmentItemRef.Type
Source |
    <xs:attributeGroup name="sourceIdentifier.VariableMapping.Attr">
        <xs:attribute name="sourceIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.384 "sourceValue.InterpolationTableEntry.Attr" Attribute Group Description

The XSD description for the "sourceValue.InterpolationTableEntry.Attr" Attribute Group is given in Table 4.3.384.

Table 4.3.384 XSD description for the "sourceValue.InterpolationTableEntry.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | InterpolationTableEntry.Type
Elements | interpolationTableEntry/InterpolationTable.Type
Source |
    <xs:attributeGroup name="sourceValue.InterpolationTableEntry.Attr">
        <xs:attribute name="sourceValue" use="required" type="xs:double" />
    </xs:attributeGroup>

### 4.3.385 "sourceValue.MatchTableEntry.Attr" Attribute Group Description

The XSD description for the "sourceValue.MatchTableEntry.Attr" Attribute Group is given in Table 4.3.385.

Table 4.3.385 XSD description for the "sourceValue.MatchTableEntry.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MatchTableEntry.Type
Elements | matchTableEntry/MatchTable.Type
Source |
    <xs:attributeGroup name="sourceValue.MatchTableEntry.Attr">
        <xs:attribute name="sourceValue" use="required" type="xs:int" />
    </xs:attributeGroup>

### 4.3.386 "span.Col.Attr" Attribute Group Description

The XSD description for the "span.Col.Attr" Attribute Group is given in Table 4.3.386.

Table 4.3.386 XSD description for the "span.Col.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Col.Type
Elements | col/ColGroup.Type, col/Table.Type
Source |
    <xs:attributeGroup name="span.Col.Attr">
        <xs:attribute name="span" use="optional" type="xs:int" />
    </xs:attributeGroup>

### 4.3.387 "span.ColGroup.Attr" Attribute Group Description

The XSD description for the "span.ColGroup.Attr" Attribute Group is given in Table 4.3.387.

Table 4.3.387 XSD description for the "span.ColGroup.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ColGroup.Type
Elements | colgroup/Table.Type
Source |
    <xs:attributeGroup name="span.ColGroup.Attr">
        <xs:attribute name="span" use="optional" type="xs:int" />
    </xs:attributeGroup>

### 4.3.388 "src.Img.Attr" Attribute Group Description

The XSD description for the "src.Img.Attr" Attribute Group is given in Table 4.3.388.

Table 4.3.388 XSD description for the "src.Img.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Img.Type
Elements | img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="src.Img.Attr">
        <xs:attribute name="src" use="required" type="xs:anyURI" />
    </xs:attributeGroup>

### 4.3.389 "step.RandomInteger.Attr" Attribute Group Description

The XSD description for the "step.RandomInteger.Attr" Attribute Group is given in Table 4.3.389.

Table 4.3.389 XSD description for the "step.RandomInteger.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | RandomInteger.Type
Elements | randomInteger/AnyN.Type, randomInteger/BranchRule.Type, randomInteger/CustomOperator.Type, randomInteger/Equal.Type, randomInteger/EqualRounded.Type, randomInteger/FieldValue.Type, randomInteger/Index.Type, randomInteger/Inside.Type, randomInteger/Logic0toMany.Type, randomInteger/Logic1toMany.Type, randomInteger/LogicPair.Type, randomInteger/LogicSingle.Type, randomInteger/LookupOutcomeValue.Type, randomInteger/MathOperator.Type, randomInteger/OutcomeIf.Type, randomInteger/PatternMatch.Type, randomInteger/Repeat.Type, randomInteger/ResponseIf.Type, randomInteger/RoundTo.Type, randomInteger/SetValue.Type, randomInteger/StatsOperator.Type, randomInteger/StringMatch.Type, randomInteger/Substring.Type, randomInteger/TemplateConstraint.Type, randomInteger/TemplateDefault.Type, randomInteger/TemplateIf.Type, randomInteger/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="step.RandomInteger.Attr">
        <xs:attribute name="step" use="optional" default="1">
            <xs:simpleType>
                <xs:union>
                    <xs:simpleType>
                        <xs:restriction base="xs:integer" />
                    </xs:simpleType>
                    <xs:simpleType>
                        <xs:restriction base="VariableString.Type" />
                    </xs:simpleType>
                </xs:union>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.390 "step.SliderInteraction.Attr" Attribute Group Description

The XSD description for the "step.SliderInteraction.Attr" Attribute Group is given in Table 4.3.390.

Table 4.3.390 XSD description for the "step.SliderInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SliderInteraction.Type
Elements | sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type
Source |
    <xs:attributeGroup name="step.SliderInteraction.Attr">
        <xs:attribute name="step" use="optional" default="1.0" type="NonNegativeDouble.Type" />
    </xs:attributeGroup>

### 4.3.391 "stepLabel.SliderInteraction.Attr" Attribute Group Description

The XSD description for the "stepLabel.SliderInteraction.Attr" Attribute Group is given in Table 4.3.391.

Table 4.3.391 XSD description for the "stepLabel.SliderInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SliderInteraction.Type
Elements | sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type
Source |
    <xs:attributeGroup name="stepLabel.SliderInteraction.Attr">
        <xs:attribute name="stepLabel" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.392 "stringIdentifier.ExtendedTextInteraction.Attr" Attribute Group Description

The XSD description for the "stringIdentifier.ExtendedTextInteraction.Attr" Attribute Group is given in Table 4.3.392.

Table 4.3.392 XSD description for the "stringIdentifier.ExtendedTextInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ExtendedTextInteraction.Type
Elements | extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type
Source |
    <xs:attributeGroup name="stringIdentifier.ExtendedTextInteraction.Attr">
        <xs:attribute name="stringIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.393 "stringIdentifier.TextEntryInteraction.Attr" Attribute Group Description

The XSD description for the "stringIdentifier.TextEntryInteraction.Attr" Attribute Group is given in Table 4.3.393.

Table 4.3.393 XSD description for the "stringIdentifier.TextEntryInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TextEntryInteraction.Type
Elements | textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Source |
    <xs:attributeGroup name="stringIdentifier.TextEntryInteraction.Attr">
        <xs:attribute name="stringIdentifier" use="optional" type="UniqueIdentifierRef.Type" />
    </xs:attributeGroup>

### 4.3.394 "submissionMode.TestPart.Attr" Attribute Group Description

The XSD description for the "submissionMode.TestPart.Attr" Attribute Group is given in Table 4.3.394.

Table 4.3.394 XSD description for the "submissionMode.TestPart.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TestPart.Type
Elements | testPart/AssessmentTest.Type
Source |
    <xs:attributeGroup name="submissionMode.TestPart.Attr">
        <xs:attribute name="submissionMode" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="individual" />
                    <xs:enumeration value="simultaneous" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.395 "substring.StringMatch.Attr" Attribute Group Description

The XSD description for the "substring.StringMatch.Attr" Attribute Group is given in Table 4.3.395.

Table 4.3.395 XSD description for the "substring.StringMatch.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | StringMatch.Type
Elements | stringMatch/AnyN.Type, stringMatch/BranchRule.Type, stringMatch/CustomOperator.Type, stringMatch/Equal.Type, stringMatch/EqualRounded.Type, stringMatch/FieldValue.Type, stringMatch/Index.Type, stringMatch/Inside.Type, stringMatch/Logic0toMany.Type, stringMatch/Logic1toMany.Type, stringMatch/LogicPair.Type, stringMatch/LogicSingle.Type, stringMatch/LookupOutcomeValue.Type, stringMatch/MathOperator.Type, stringMatch/OutcomeIf.Type, stringMatch/PatternMatch.Type, stringMatch/Repeat.Type, stringMatch/ResponseIf.Type, stringMatch/RoundTo.Type, stringMatch/SetValue.Type, stringMatch/StatsOperator.Type, stringMatch/StringMatch.Type, stringMatch/Substring.Type, stringMatch/TemplateConstraint.Type, stringMatch/TemplateDefault.Type, stringMatch/TemplateIf.Type
Source |
    <xs:attributeGroup name="substring.StringMatch.Attr">
        <xs:attribute name="substring" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.396 "summary.Table.Attr" Attribute Group Description

The XSD description for the "summary.Table.Attr" Attribute Group is given in Table 4.3.396.

Table 4.3.396 XSD description for the "summary.Table.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Table.Type
Elements | table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type
Source |
    <xs:attributeGroup name="summary.Table.Attr">
        <xs:attribute name="summary" use="optional" type="xs:string" />
    </xs:attributeGroup>

### 4.3.397 "target.BranchRule.Attr" Attribute Group Description

The XSD description for the "target.BranchRule.Attr" Attribute Group is given in Table 4.3.397.

Table 4.3.397 XSD description for the "target.BranchRule.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BranchRule.Type
Elements | branchRule/AssessmentItemRef.Type, branchRule/AssessmentSection.Type, branchRule/TestPart.Type
Source |
    <xs:attributeGroup name="target.BranchRule.Attr">
        <xs:attribute name="target" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.398 "targetIdentifier.VariableMapping.Attr" Attribute Group Description

The XSD description for the "targetIdentifier.VariableMapping.Attr" Attribute Group is given in Table 4.3.398.

Table 4.3.398 XSD description for the "targetIdentifier.VariableMapping.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | VariableMapping.Type
Elements | variableMapping/AssessmentItemRef.Type
Source |
    <xs:attributeGroup name="targetIdentifier.VariableMapping.Attr">
        <xs:attribute name="targetIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.399 "targetValue.InterpolationTableEntry.Attr" Attribute Group Description

The XSD description for the "targetValue.InterpolationTableEntry.Attr" Attribute Group is given in Table 4.3.399.

Table 4.3.399 XSD description for the "targetValue.InterpolationTableEntry.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | InterpolationTableEntry.Type
Elements | interpolationTableEntry/InterpolationTable.Type
Source |
    <xs:attributeGroup name="targetValue.InterpolationTableEntry.Attr">
        <xs:attribute name="targetValue" use="required" type="xs:string" />
    </xs:attributeGroup>

### 4.3.400 "targetValue.MatchTableEntry.Attr" Attribute Group Description

The XSD description for the "targetValue.MatchTableEntry.Attr" Attribute Group is given in Table 4.3.400.

Table 4.3.400 XSD description for the "targetValue.MatchTableEntry.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | MatchTableEntry.Type
Elements | matchTableEntry/MatchTable.Type
Source |
    <xs:attributeGroup name="targetValue.MatchTableEntry.Attr">
        <xs:attribute name="targetValue" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="boolean" />
                    <xs:enumeration value="directedPair" />
                    <xs:enumeration value="duration" />
                    <xs:enumeration value="file" />
                    <xs:enumeration value="float" />
                    <xs:enumeration value="identifier" />
                    <xs:enumeration value="integer" />
                    <xs:enumeration value="pair" />
                    <xs:enumeration value="point" />
                    <xs:enumeration value="string" />
                    <xs:enumeration value="uri" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.401 "template.ResponseProcessing.Attr" Attribute Group Description

The XSD description for the "template.ResponseProcessing.Attr" Attribute Group is given in Table 4.3.401.

Table 4.3.401 XSD description for the "template.ResponseProcessing.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | responseProcessing
ComplexTypes | ResponseProcessing.Type
Source |
    <xs:attributeGroup name="template.ResponseProcessing.Attr">
        <xs:attribute name="template" use="optional" type="xs:anyURI" />
    </xs:attributeGroup>

### 4.3.402 "templateIdentifier.AssociableHotspot.Attr" Attribute Group Description

The XSD description for the "templateIdentifier.AssociableHotspot.Attr" Attribute Group is given in Table 4.3.402.

Table 4.3.402 XSD description for the "templateIdentifier.AssociableHotspot.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AssociableHotspot.Type
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="templateIdentifier.AssociableHotspot.Attr">
        <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.403 "templateIdentifier.Gap.Attr" Attribute Group Description

The XSD description for the "templateIdentifier.Gap.Attr" Attribute Group is given in Table 4.3.403.

Table 4.3.403 XSD description for the "templateIdentifier.Gap.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Gap.Type
Elements | gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type
Source |
    <xs:attributeGroup name="templateIdentifier.Gap.Attr">
        <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.404 "templateIdentifier.GapImg.Attr" Attribute Group Description

The XSD description for the "templateIdentifier.GapImg.Attr" Attribute Group is given in Table 4.3.404.

Table 4.3.404 XSD description for the "templateIdentifier.GapImg.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapImg.Type
Elements | gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="templateIdentifier.GapImg.Attr">
        <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.405 "templateIdentifier.GapText.Attr" Attribute Group Description

The XSD description for the "templateIdentifier.GapText.Attr" Attribute Group is given in Table 4.3.405.

Table 4.3.405 XSD description for the "templateIdentifier.GapText.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapText.Type
Elements | gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="templateIdentifier.GapText.Attr">
        <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.406 "templateIdentifier.HotText.Attr" Attribute Group Description

The XSD description for the "templateIdentifier.HotText.Attr" Attribute Group is given in Table 4.3.406.

Table 4.3.406 XSD description for the "templateIdentifier.HotText.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | HotText.Type
Elements | hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type
Source |
    <xs:attributeGroup name="templateIdentifier.HotText.Attr">
        <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.407 "templateIdentifier.HotspotChoice.Attr" Attribute Group Description

The XSD description for the "templateIdentifier.HotspotChoice.Attr" Attribute Group is given in Table 4.3.407.

Table 4.3.407 XSD description for the "templateIdentifier.HotspotChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | HotspotChoice.Type
Elements | hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type
Source |
    <xs:attributeGroup name="templateIdentifier.HotspotChoice.Attr">
        <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.408 "templateIdentifier.InlineChoice.Attr" Attribute Group Description

The XSD description for the "templateIdentifier.InlineChoice.Attr" Attribute Group is given in Table 4.3.408.

Table 4.3.408 XSD description for the "templateIdentifier.InlineChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | InlineChoice.Type
Elements | inlineChoice/InlineChoiceInteraction.Type
Source |
    <xs:attributeGroup name="templateIdentifier.InlineChoice.Attr">
        <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.409 "templateIdentifier.RubricBlockTemplateBlock.Attr" Attribute Group Description

The XSD description for the "templateIdentifier.RubricBlockTemplateBlock.Attr" Attribute Group is given in Table 4.3.409.

Table 4.3.409 XSD description for the "templateIdentifier.RubricBlockTemplateBlock.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | RubricBlockTemplateBlock.Type
Elements | templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type
Source |
    <xs:attributeGroup name="templateIdentifier.RubricBlockTemplateBlock.Attr">
        <xs:attribute name="templateIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.410 "templateIdentifier.RubricBlockTemplateInline.Attr" Attribute Group Description

The XSD description for the "templateIdentifier.RubricBlockTemplateInline.Attr" Attribute Group is given in Table 4.3.410.

Table 4.3.410 XSD description for the "templateIdentifier.RubricBlockTemplateInline.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | RubricBlockTemplateInline.Type
Elements | templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="templateIdentifier.RubricBlockTemplateInline.Attr">
        <xs:attribute name="templateIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.411 "templateIdentifier.SimpleAssociableChoice.Attr" Attribute Group Description

The XSD description for the "templateIdentifier.SimpleAssociableChoice.Attr" Attribute Group is given in Table 4.3.411.

Table 4.3.411 XSD description for the "templateIdentifier.SimpleAssociableChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SimpleAssociableChoice.Type
Elements | simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type
Source |
    <xs:attributeGroup name="templateIdentifier.SimpleAssociableChoice.Attr">
        <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.412 "templateIdentifier.SimpleChoice.Attr" Attribute Group Description

The XSD description for the "templateIdentifier.SimpleChoice.Attr" Attribute Group is given in Table 4.3.412.

Table 4.3.412 XSD description for the "templateIdentifier.SimpleChoice.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SimpleChoice.Type
Elements | simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type
Source |
    <xs:attributeGroup name="templateIdentifier.SimpleChoice.Attr">
        <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.413 "templateIdentifier.TemplateBlock.Attr" Attribute Group Description

The XSD description for the "templateIdentifier.TemplateBlock.Attr" Attribute Group is given in Table 4.3.413.

Table 4.3.413 XSD description for the "templateIdentifier.TemplateBlock.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TemplateBlock.Type
Elements | templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type
Source |
    <xs:attributeGroup name="templateIdentifier.TemplateBlock.Attr">
        <xs:attribute name="templateIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.414 "templateIdentifier.TemplateDefault.Attr" Attribute Group Description

The XSD description for the "templateIdentifier.TemplateDefault.Attr" Attribute Group is given in Table 4.3.414.

Table 4.3.414 XSD description for the "templateIdentifier.TemplateDefault.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TemplateDefault.Type
Elements | templateDefault/AssessmentItemRef.Type
Source |
    <xs:attributeGroup name="templateIdentifier.TemplateDefault.Attr">
        <xs:attribute name="templateIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.415 "templateIdentifier.TemplateInline.Attr" Attribute Group Description

The XSD description for the "templateIdentifier.TemplateInline.Attr" Attribute Group is given in Table 4.3.415.

Table 4.3.415 XSD description for the "templateIdentifier.TemplateInline.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TemplateInline.Type
Elements | templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type
Source |
    <xs:attributeGroup name="templateIdentifier.TemplateInline.Attr">
        <xs:attribute name="templateIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.416 "templateLocation.ResponseProcessing.Attr" Attribute Group Description

The XSD description for the "templateLocation.ResponseProcessing.Attr" Attribute Group is given in Table 4.3.416.

Table 4.3.416 XSD description for the "templateLocation.ResponseProcessing.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | responseProcessing
ComplexTypes | ResponseProcessing.Type
Source |
    <xs:attributeGroup name="templateLocation.ResponseProcessing.Attr">
        <xs:attribute name="templateLocation" use="optional" type="xs:anyURI" />
    </xs:attributeGroup>

### 4.3.417 "timeDependent.AssessmentItem.Attr" Attribute Group Description

The XSD description for the "timeDependent.AssessmentItem.Attr" Attribute Group is given in Table 4.3.417.

Table 4.3.417 XSD description for the "timeDependent.AssessmentItem.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentItem
ComplexTypes | AssessmentItem.Type
Source |
    <xs:attributeGroup name="timeDependent.AssessmentItem.Attr">
        <xs:attribute name="timeDependent" use="required" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.418 "title.AssessmentItem.Attr" Attribute Group Description

The XSD description for the "title.AssessmentItem.Attr" Attribute Group is given in Table 4.3.418.

Table 4.3.418 XSD description for the "title.AssessmentItem.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentItem
ComplexTypes | AssessmentItem.Type
Source |
    <xs:attributeGroup name="title.AssessmentItem.Attr">
        <xs:attribute name="title" use="required" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.419 "title.AssessmentSection.Attr" Attribute Group Description

The XSD description for the "title.AssessmentSection.Attr" Attribute Group is given in Table 4.3.419.

Table 4.3.419 XSD description for the "title.AssessmentSection.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentSection
ComplexTypes | AssessmentSection.Type
Source |
    <xs:attributeGroup name="title.AssessmentSection.Attr">
        <xs:attribute name="title" use="required" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.420 "title.AssessmentStimulus.Attr" Attribute Group Description

The XSD description for the "title.AssessmentStimulus.Attr" Attribute Group is given in Table 4.3.420.

Table 4.3.420 XSD description for the "title.AssessmentStimulus.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentStimulus
ComplexTypes | AssessmentStimulus.Type
Source |
    <xs:attributeGroup name="title.AssessmentStimulus.Attr">
        <xs:attribute name="title" use="required" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.421 "title.AssessmentTest.Attr" Attribute Group Description

The XSD description for the "title.AssessmentTest.Attr" Attribute Group is given in Table 4.3.421.

Table 4.3.421 XSD description for the "title.AssessmentTest.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentTest
ComplexTypes | AssessmentTest.Type
Source |
    <xs:attributeGroup name="title.AssessmentTest.Attr">
        <xs:attribute name="title" use="required" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.422 "title.BDO.Attr" Attribute Group Description

The XSD description for the "title.BDO.Attr" Attribute Group is given in Table 4.3.422.

Table 4.3.422 XSD description for the "title.BDO.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | BDO.Type
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="title.BDO.Attr">
        <xs:attribute name="title" use="optional" type="xs:string" />
    </xs:attributeGroup>

### 4.3.423 "title.EndAttemptInteraction.Attr" Attribute Group Description

The XSD description for the "title.EndAttemptInteraction.Attr" Attribute Group is given in Table 4.3.423.

Table 4.3.423 XSD description for the "title.EndAttemptInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | EndAttemptInteraction.Type
Elements | endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type
Source |
    <xs:attributeGroup name="title.EndAttemptInteraction.Attr">
        <xs:attribute name="title" use="required" type="xs:string" />
    </xs:attributeGroup>

### 4.3.424 "title.InfoControl.Attr" Attribute Group Description

The XSD description for the "title.InfoControl.Attr" Attribute Group is given in Table 4.3.424.

Table 4.3.424 XSD description for the "title.InfoControl.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | InfoControl.Type
Elements | infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type
Source |
    <xs:attributeGroup name="title.InfoControl.Attr">
        <xs:attribute name="title" use="required" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.425 "title.ModalFeedback.Attr" Attribute Group Description

The XSD description for the "title.ModalFeedback.Attr" Attribute Group is given in Table 4.3.425.

Table 4.3.425 XSD description for the "title.ModalFeedback.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ModalFeedback.Type
Elements | modalFeedback/AssessmentItem.Type
Source |
    <xs:attributeGroup name="title.ModalFeedback.Attr">
        <xs:attribute name="title" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.426 "title.StyleSheet.Attr" Attribute Group Description

The XSD description for the "title.StyleSheet.Attr" Attribute Group is given in Table 4.3.426.

Table 4.3.426 XSD description for the "title.StyleSheet.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | StyleSheet.Type
Elements | stylesheet/AssessmentItem.Type, stylesheet/AssessmentStimulus.Type, stylesheet/AssessmentTest.Type, stylesheet/FeedbackBlock.Type, stylesheet/ModalFeedback.Type, stylesheet/RubricBlock.Type, stylesheet/RubricBlockTemplateBlock.Type, stylesheet/TemplateBlock.Type, stylesheet/TemplateBlockFeedbackBlock.Type, stylesheet/TestFeedback.Type
Source |
    <xs:attributeGroup name="title.StyleSheet.Attr">
        <xs:attribute name="title" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.427 "title.TestFeedback.Attr" Attribute Group Description

The XSD description for the "title.TestFeedback.Attr" Attribute Group is given in Table 4.3.427.

Table 4.3.427 XSD description for the "title.TestFeedback.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TestFeedback.Type
Elements | testFeedback/AssessmentTest.Type, testFeedback/TestPart.Type
Source |
    <xs:attributeGroup name="title.TestFeedback.Attr">
        <xs:attribute name="title" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.428 "tolerance.Equal.Attr" Attribute Group Description

The XSD description for the "tolerance.Equal.Attr" Attribute Group is given in Table 4.3.428.

Table 4.3.428 XSD description for the "tolerance.Equal.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Equal.Type
Elements | equal/AnyN.Type, equal/BranchRule.Type, equal/CustomOperator.Type, equal/Equal.Type, equal/EqualRounded.Type, equal/FieldValue.Type, equal/Index.Type, equal/Inside.Type, equal/Logic0toMany.Type, equal/Logic1toMany.Type, equal/LogicPair.Type, equal/LogicSingle.Type, equal/LookupOutcomeValue.Type, equal/MathOperator.Type, equal/OutcomeIf.Type, equal/PatternMatch.Type, equal/Repeat.Type, equal/ResponseIf.Type, equal/RoundTo.Type, equal/SetValue.Type, equal/StatsOperator.Type, equal/StringMatch.Type, equal/Substring.Type, equal/TemplateConstraint.Type, equal/TemplateDefault.Type, equal/TemplateIf.Type
Source |
    <xs:attributeGroup name="tolerance.Equal.Attr">
        <xs:attribute name="tolerance" use="optional">
            <xs:simpleType>
                <xs:list itemType="ToleranceList.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.429 "toleranceMode.Equal.Attr" Attribute Group Description

The XSD description for the "toleranceMode.Equal.Attr" Attribute Group is given in Table 4.3.429.

Table 4.3.429 XSD description for the "toleranceMode.Equal.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Equal.Type
Elements | equal/AnyN.Type, equal/BranchRule.Type, equal/CustomOperator.Type, equal/Equal.Type, equal/EqualRounded.Type, equal/FieldValue.Type, equal/Index.Type, equal/Inside.Type, equal/Logic0toMany.Type, equal/Logic1toMany.Type, equal/LogicPair.Type, equal/LogicSingle.Type, equal/LookupOutcomeValue.Type, equal/MathOperator.Type, equal/OutcomeIf.Type, equal/PatternMatch.Type, equal/Repeat.Type, equal/ResponseIf.Type, equal/RoundTo.Type, equal/SetValue.Type, equal/StatsOperator.Type, equal/StringMatch.Type, equal/Substring.Type, equal/TemplateConstraint.Type, equal/TemplateDefault.Type, equal/TemplateIf.Type
Source |
    <xs:attributeGroup name="toleranceMode.Equal.Attr">
        <xs:attribute name="toleranceMode" use="optional" default="exact">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="absolute" />
                    <xs:enumeration value="exact" />
                    <xs:enumeration value="relative" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.430 "toolName.AssessmentItem.Attr" Attribute Group Description

The XSD description for the "toolName.AssessmentItem.Attr" Attribute Group is given in Table 4.3.430.

Table 4.3.430 XSD description for the "toolName.AssessmentItem.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentItem
ComplexTypes | AssessmentItem.Type
Source |
    <xs:attributeGroup name="toolName.AssessmentItem.Attr">
        <xs:attribute name="toolName" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.431 "toolName.AssessmentStimulus.Attr" Attribute Group Description

The XSD description for the "toolName.AssessmentStimulus.Attr" Attribute Group is given in Table 4.3.431.

Table 4.3.431 XSD description for the "toolName.AssessmentStimulus.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentStimulus
ComplexTypes | AssessmentStimulus.Type
Source |
    <xs:attributeGroup name="toolName.AssessmentStimulus.Attr">
        <xs:attribute name="toolName" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.432 "toolName.AssessmentTest.Attr" Attribute Group Description

The XSD description for the "toolName.AssessmentTest.Attr" Attribute Group is given in Table 4.3.432.

Table 4.3.432 XSD description for the "toolName.AssessmentTest.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentTest
ComplexTypes | AssessmentTest.Type
Source |
    <xs:attributeGroup name="toolName.AssessmentTest.Attr">
        <xs:attribute name="toolName" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.433 "toolVersion.AssessmentItem.Attr" Attribute Group Description

The XSD description for the "toolVersion.AssessmentItem.Attr" Attribute Group is given in Table 4.3.433.

Table 4.3.433 XSD description for the "toolVersion.AssessmentItem.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentItem
ComplexTypes | AssessmentItem.Type
Source |
    <xs:attributeGroup name="toolVersion.AssessmentItem.Attr">
        <xs:attribute name="toolVersion" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.434 "toolVersion.AssessmentStimulus.Attr" Attribute Group Description

The XSD description for the "toolVersion.AssessmentStimulus.Attr" Attribute Group is given in Table 4.3.434.

Table 4.3.434 XSD description for the "toolVersion.AssessmentStimulus.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentStimulus
ComplexTypes | AssessmentStimulus.Type
Source |
    <xs:attributeGroup name="toolVersion.AssessmentStimulus.Attr">
        <xs:attribute name="toolVersion" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.435 "toolVersion.AssessmentTest.Attr" Attribute Group Description

The XSD description for the "toolVersion.AssessmentTest.Attr" Attribute Group is given in Table 4.3.435.

Table 4.3.435 XSD description for the "toolVersion.AssessmentTest.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentTest
ComplexTypes | AssessmentTest.Type
Source |
    <xs:attributeGroup name="toolVersion.AssessmentTest.Attr">
        <xs:attribute name="toolVersion" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.436 "top.GapImg.Attr" Attribute Group Description

The XSD description for the "top.GapImg.Attr" Attribute Group is given in Table 4.3.436.

Table 4.3.436 XSD description for the "top.GapImg.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | GapImg.Type
Elements | gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type
Source |
    <xs:attributeGroup name="top.GapImg.Attr">
        <xs:attribute name="top" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.437 "type.A.Attr" Attribute Group Description

The XSD description for the "type.A.Attr" Attribute Group is given in Table 4.3.437.

Table 4.3.437 XSD description for the "type.A.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | A.Type
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="type.A.Attr">
        <xs:attribute name="type" use="optional" type="MimeType.Type" />
    </xs:attributeGroup>

### 4.3.438 "type.Object.Attr" Attribute Group Description

The XSD description for the "type.Object.Attr" Attribute Group is given in Table 4.3.438.

Table 4.3.438 XSD description for the "type.Object.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Object.Type
Elements | object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type
Source |
    <xs:attributeGroup name="type.Object.Attr">
        <xs:attribute name="type" use="required" type="MimeType.Type" />
    </xs:attributeGroup>

### 4.3.439 "type.Param.Attr" Attribute Group Description

The XSD description for the "type.Param.Attr" Attribute Group is given in Table 4.3.439.

Table 4.3.439 XSD description for the "type.Param.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Param.Type
Elements | param/Object.Type
Source |
    <xs:attributeGroup name="type.Param.Attr">
        <xs:attribute name="type" use="optional" type="MimeType.Type" />
    </xs:attributeGroup>

### 4.3.440 "type.StyleSheet.Attr" Attribute Group Description

The XSD description for the "type.StyleSheet.Attr" Attribute Group is given in Table 4.3.440.

Table 4.3.440 XSD description for the "type.StyleSheet.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | StyleSheet.Type
Elements | stylesheet/AssessmentItem.Type, stylesheet/AssessmentStimulus.Type, stylesheet/AssessmentTest.Type, stylesheet/FeedbackBlock.Type, stylesheet/ModalFeedback.Type, stylesheet/RubricBlock.Type, stylesheet/RubricBlockTemplateBlock.Type, stylesheet/TemplateBlock.Type, stylesheet/TemplateBlockFeedbackBlock.Type, stylesheet/TestFeedback.Type
Source |
    <xs:attributeGroup name="type.StyleSheet.Attr">
        <xs:attribute name="type" use="required" type="MimeType.Type" />
    </xs:attributeGroup>

### 4.3.441 "type.UploadInteraction.Attr" Attribute Group Description

The XSD description for the "type.UploadInteraction.Attr" Attribute Group is given in Table 4.3.441.

Table 4.3.441 XSD description for the "type.UploadInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | UploadInteraction.Type
Elements | uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Source |
    <xs:attributeGroup name="type.UploadInteraction.Attr">
        <xs:attribute name="type" use="optional" type="MimeType.Type" />
    </xs:attributeGroup>

### 4.3.442 "upperBound.AreaMapping.Attr" Attribute Group Description

The XSD description for the "upperBound.AreaMapping.Attr" Attribute Group is given in Table 4.3.442.

Table 4.3.442 XSD description for the "upperBound.AreaMapping.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | AreaMapping.Type
Elements | areaMapping/ResponseDeclaration.Type
Source |
    <xs:attributeGroup name="upperBound.AreaMapping.Attr">
        <xs:attribute name="upperBound" use="optional" type="xs:double" />
    </xs:attributeGroup>

### 4.3.443 "upperBound.Mapping.Attr" Attribute Group Description

The XSD description for the "upperBound.Mapping.Attr" Attribute Group is given in Table 4.3.443.

Table 4.3.443 XSD description for the "upperBound.Mapping.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Mapping.Type
Elements | mapping/ResponseDeclaration.Type
Source |
    <xs:attributeGroup name="upperBound.Mapping.Attr">
        <xs:attribute name="upperBound" use="optional" type="xs:double" />
    </xs:attributeGroup>

### 4.3.444 "upperBound.SliderInteraction.Attr" Attribute Group Description

The XSD description for the "upperBound.SliderInteraction.Attr" Attribute Group is given in Table 4.3.444.

Table 4.3.444 XSD description for the "upperBound.SliderInteraction.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | SliderInteraction.Type
Elements | sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type
Source |
    <xs:attributeGroup name="upperBound.SliderInteraction.Attr">
        <xs:attribute name="upperBound" use="required" type="NonNegativeDouble.Type" />
    </xs:attributeGroup>

### 4.3.445 "use.RubricBlock.Attr" Attribute Group Description

The XSD description for the "use.RubricBlock.Attr" Attribute Group is given in Table 4.3.445.

Table 4.3.445 XSD description for the "use.RubricBlock.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | RubricBlock.Type
Elements | rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type
Source |
    <xs:attributeGroup name="use.RubricBlock.Attr">
        <xs:attribute name="use" use="optional" type="xs:normalizedString" />
    </xs:attributeGroup>

### 4.3.446 "validateResponses.ItemSessionControl.Attr" Attribute Group Description

The XSD description for the "validateResponses.ItemSessionControl.Attr" Attribute Group is given in Table 4.3.446.

Table 4.3.446 XSD description for the "validateResponses.ItemSessionControl.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | ItemSessionControl.Type
Elements | itemSessionControl/AssessmentItemRef.Type, itemSessionControl/AssessmentSection.Type, itemSessionControl/TestPart.Type
Source |
    <xs:attributeGroup name="validateResponses.ItemSessionControl.Attr">
        <xs:attribute name="validateResponses" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.447 "valign.TDH.Attr" Attribute Group Description

The XSD description for the "valign.TDH.Attr" Attribute Group is given in Table 4.3.447.

Table 4.3.447 XSD description for the "valign.TDH.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TDH.Type
Elements | td/TR.Type, th/TR.Type
Source |
    <xs:attributeGroup name="valign.TDH.Attr">
        <xs:attribute name="valign" use="optional">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="bottom" />
                    <xs:enumeration value="middle" />
                    <xs:enumeration value="top" />
                    <xs:enumeration value="baseline" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.448 "value.Param.Attr" Attribute Group Description

The XSD description for the "value.Param.Attr" Attribute Group is given in Table 4.3.448.

Table 4.3.448 XSD description for the "value.Param.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Param.Type
Elements | param/Object.Type
Source |
    <xs:attributeGroup name="value.Param.Attr">
        <xs:attribute name="value" use="required" type="xs:string" />
    </xs:attributeGroup>

### 4.3.449 "value.Weight.Attr" Attribute Group Description

The XSD description for the "value.Weight.Attr" Attribute Group is given in Table 4.3.449.

Table 4.3.449 XSD description for the "value.Weight.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Weight.Type
Elements | weight/AssessmentItemRef.Type
Source |
    <xs:attributeGroup name="value.Weight.Attr">
        <xs:attribute name="value" use="required" type="xs:double" />
    </xs:attributeGroup>

### 4.3.450 "valuetype.Param.Attr" Attribute Group Description

The XSD description for the "valuetype.Param.Attr" Attribute Group is given in Table 4.3.450.

Table 4.3.450 XSD description for the "valuetype.Param.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Param.Type
Elements | param/Object.Type
Source |
    <xs:attributeGroup name="valuetype.Param.Attr">
        <xs:attribute name="valuetype" use="required">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="DATA" />
                    <xs:enumeration value="REF" />
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.451 "variableIdentifier.TestVariables.Attr" Attribute Group Description

The XSD description for the "variableIdentifier.TestVariables.Attr" Attribute Group is given in Table 4.3.451.

Table 4.3.451 XSD description for the "variableIdentifier.TestVariables.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TestVariables.Type
Elements | testVariables/AnyN.Type, testVariables/BranchRule.Type, testVariables/CustomOperator.Type, testVariables/Equal.Type, testVariables/EqualRounded.Type, testVariables/FieldValue.Type, testVariables/Index.Type, testVariables/Inside.Type, testVariables/Logic0toMany.Type, testVariables/Logic1toMany.Type, testVariables/LogicPair.Type, testVariables/LogicSingle.Type, testVariables/LookupOutcomeValue.Type, testVariables/MathOperator.Type, testVariables/OutcomeIf.Type, testVariables/PatternMatch.Type, testVariables/Repeat.Type, testVariables/ResponseIf.Type, testVariables/RoundTo.Type, testVariables/SetValue.Type, testVariables/StatsOperator.Type, testVariables/StringMatch.Type, testVariables/Substring.Type, testVariables/TemplateConstraint.Type, testVariables/TemplateDefault.Type, testVariables/TemplateIf.Type, testVariables/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="variableIdentifier.TestVariables.Attr">
        <xs:attribute name="variableIdentifier" use="required" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.452 "variableIdentifierRef.OutcomeDeclaration.Attr" Attribute Group Description

The XSD description for the "variableIdentifierRef.OutcomeDeclaration.Attr" Attribute Group is given in Table 4.3.452.

Table 4.3.452 XSD description for the "variableIdentifierRef.OutcomeDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | outcomeDeclaration
ComplexTypes | OutcomeDeclaration.Type
Source |
    <xs:attributeGroup name="variableIdentifierRef.OutcomeDeclaration.Attr">
        <xs:attribute name="variableIdentifierRef" use="optional" type="UniqueIdentifierRef.Type" />
    </xs:attributeGroup>

### 4.3.453 "view.OutcomeDeclaration.Attr" Attribute Group Description

The XSD description for the "view.OutcomeDeclaration.Attr" Attribute Group is given in Table 4.3.453.

Table 4.3.453 XSD description for the "view.OutcomeDeclaration.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | outcomeDeclaration
ComplexTypes | OutcomeDeclaration.Type
Source |
    <xs:attributeGroup name="view.OutcomeDeclaration.Attr">
        <xs:attribute name="view" use="optional">
            <xs:simpleType>
                <xs:list itemType="View.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.454 "view.RubricBlock.Attr" Attribute Group Description

The XSD description for the "view.RubricBlock.Attr" Attribute Group is given in Table 4.3.454.

Table 4.3.454 XSD description for the "view.RubricBlock.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | RubricBlock.Type
Elements | rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type
Source |
    <xs:attributeGroup name="view.RubricBlock.Attr">
        <xs:attribute name="view" use="required">
            <xs:simpleType>
                <xs:list itemType="View.Type">
            </xs:simpleType>
        </xs:attribute>
    </xs:attributeGroup>

### 4.3.455 "visible.AssessmentSection.Attr" Attribute Group Description

The XSD description for the "visible.AssessmentSection.Attr" Attribute Group is given in Table 4.3.455.

Table 4.3.455 XSD description for the "visible.AssessmentSection.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
Root Elements | assessmentSection
ComplexTypes | AssessmentSection.Type
Source |
    <xs:attributeGroup name="visible.AssessmentSection.Attr">
        <xs:attribute name="visible" use="required" type="xs:boolean" />
    </xs:attributeGroup>

### 4.3.456 "weightIdentifier.OutcomeMinMax.Attr" Attribute Group Description

The XSD description for the "weightIdentifier.OutcomeMinMax.Attr" Attribute Group is given in Table 4.3.456.

Table 4.3.456 XSD description for the "weightIdentifier.OutcomeMinMax.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | OutcomeMinMax.Type
Elements | outcomeMinimum/AnyN.Type, outcomeMinimum/BranchRule.Type, outcomeMinimum/CustomOperator.Type, outcomeMinimum/Equal.Type, outcomeMinimum/EqualRounded.Type, outcomeMinimum/FieldValue.Type, outcomeMinimum/Index.Type, outcomeMinimum/Inside.Type, outcomeMinimum/Logic0toMany.Type, outcomeMinimum/Logic1toMany.Type, outcomeMinimum/LogicPair.Type, outcomeMinimum/LogicSingle.Type, outcomeMinimum/LookupOutcomeValue.Type, outcomeMinimum/MathOperator.Type, outcomeMinimum/OutcomeIf.Type, outcomeMinimum/PatternMatch.Type, outcomeMinimum/Repeat.Type, outcomeMinimum/ResponseIf.Type, outcomeMinimum/RoundTo.Type, outcomeMinimum/SetValue.Type, outcomeMinimum/StatsOperator.Type, outcomeMinimum/StringMatch.Type, outcomeMinimum/Substring.Type, outcomeMinimum/TemplateConstraint.Type, outcomeMinimum/TemplateDefault.Type, outcomeMinimum/TemplateIf.Type, outcomeMaximum/AnyN.Type, outcomeMaximum/BranchRule.Type, outcomeMaximum/CustomOperator.Type, outcomeMaximum/Equal.Type, outcomeMaximum/EqualRounded.Type, outcomeMaximum/FieldValue.Type, outcomeMaximum/Index.Type, outcomeMaximum/Inside.Type, outcomeMaximum/Logic0toMany.Type, outcomeMaximum/Logic1toMany.Type, outcomeMaximum/LogicPair.Type, outcomeMaximum/LogicSingle.Type, outcomeMaximum/LookupOutcomeValue.Type, outcomeMaximum/MathOperator.Type, outcomeMaximum/OutcomeIf.Type, outcomeMaximum/PatternMatch.Type, outcomeMaximum/Repeat.Type, outcomeMaximum/ResponseIf.Type, outcomeMaximum/RoundTo.Type, outcomeMaximum/SetValue.Type, outcomeMaximum/StatsOperator.Type, outcomeMaximum/StringMatch.Type, outcomeMaximum/Substring.Type, outcomeMaximum/TemplateConstraint.Type, outcomeMaximum/TemplateDefault.Type, outcomeMaximum/TemplateIf.Type, outcomeMinimum/NumericLogic1toMany.Type, outcomeMaximum/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="weightIdentifier.OutcomeMinMax.Attr">
        <xs:attribute name="weightIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.457 "weightIdentifier.TestVariables.Attr" Attribute Group Description

The XSD description for the "weightIdentifier.TestVariables.Attr" Attribute Group is given in Table 4.3.457.

Table 4.3.457 XSD description for the "weightIdentifier.TestVariables.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | TestVariables.Type
Elements | testVariables/AnyN.Type, testVariables/BranchRule.Type, testVariables/CustomOperator.Type, testVariables/Equal.Type, testVariables/EqualRounded.Type, testVariables/FieldValue.Type, testVariables/Index.Type, testVariables/Inside.Type, testVariables/Logic0toMany.Type, testVariables/Logic1toMany.Type, testVariables/LogicPair.Type, testVariables/LogicSingle.Type, testVariables/LookupOutcomeValue.Type, testVariables/MathOperator.Type, testVariables/OutcomeIf.Type, testVariables/PatternMatch.Type, testVariables/Repeat.Type, testVariables/ResponseIf.Type, testVariables/RoundTo.Type, testVariables/SetValue.Type, testVariables/StatsOperator.Type, testVariables/StringMatch.Type, testVariables/Substring.Type, testVariables/TemplateConstraint.Type, testVariables/TemplateDefault.Type, testVariables/TemplateIf.Type, testVariables/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="weightIdentifier.TestVariables.Attr">
        <xs:attribute name="weightIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.458 "weightIdentifier.Variable.Attr" Attribute Group Description

The XSD description for the "weightIdentifier.Variable.Attr" Attribute Group is given in Table 4.3.458.

Table 4.3.458 XSD description for the "weightIdentifier.Variable.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Variable.Type
Elements | variable/AnyN.Type, variable/BranchRule.Type, variable/CustomOperator.Type, variable/Equal.Type, variable/EqualRounded.Type, variable/FieldValue.Type, variable/Index.Type, variable/Inside.Type, variable/Logic0toMany.Type, variable/Logic1toMany.Type, variable/LogicPair.Type, variable/LogicSingle.Type, variable/LookupOutcomeValue.Type, variable/MathOperator.Type, variable/OutcomeIf.Type, variable/PatternMatch.Type, variable/Repeat.Type, variable/ResponseIf.Type, variable/RoundTo.Type, variable/SetValue.Type, variable/StatsOperator.Type, variable/StringMatch.Type, variable/Substring.Type, variable/TemplateConstraint.Type, variable/TemplateDefault.Type, variable/TemplateIf.Type, variable/NumericLogic1toMany.Type
Source |
    <xs:attributeGroup name="weightIdentifier.Variable.Attr">
        <xs:attribute name="weightIdentifier" use="optional" type="Identifier.Type" />
    </xs:attributeGroup>

### 4.3.459 "width.Img.Attr" Attribute Group Description

The XSD description for the "width.Img.Attr" Attribute Group is given in Table 4.3.459.

Table 4.3.459 XSD description for the "width.Img.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Img.Type
Elements | img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type
Source |
    <xs:attributeGroup name="width.Img.Attr">
        <xs:attribute name="width" use="optional" type="Length.Type" />
    </xs:attributeGroup>

### 4.3.460 "width.Object.Attr" Attribute Group Description

The XSD description for the "width.Object.Attr" Attribute Group is given in Table 4.3.460.

Table 4.3.460 XSD description for the "width.Object.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Object.Type
Elements | object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type
Source |
    <xs:attributeGroup name="width.Object.Attr">
        <xs:attribute name="width" use="optional" type="Length.Type" />
    </xs:attributeGroup>

### 4.3.461 "withReplacement.Selection.Attr" Attribute Group Description

The XSD description for the "withReplacement.Selection.Attr" Attribute Group is given in Table 4.3.461.

Table 4.3.461 XSD description for the "withReplacement.Selection.Attr" Attribute Group.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Used by |
ComplexTypes | Selection.Type
Elements | selection/AssessmentSection.Type
Source |
    <xs:attributeGroup name="withReplacement.Selection.Attr">
        <xs:attribute name="withReplacement" use="optional" default="false" type="xs:boolean" />
    </xs:attributeGroup>

## 4.4 Root Complex Type Descriptions

The syntax and semantics for the Root ComplexType XSD representations is described in Appendix A1.7.

### 4.4.1 "AssessmentItem.Type" Root Complex Type Description

The XSD description for the "AssessmentItem.Type" Root ComplexType is given in Table 4.4.1.

Table 4.4.1 XSD description for the "AssessmentItem.Type" Root Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | An assessment item encompasses the information that is presented to a candidate and information about how to score the item. Scoring takes place when candidate responses are transformed into outcomes by response processing rules. It is sometimes desirable to have several different items that appear the same to the candidate but which are scored differently. In this specification, these are distinct items by definition and must therefore have distinct identifiers. To help facilitate the exchange of items that share significant parts of their presentation this specification supports the inclusion of separately managed item fragments (see Item and Test Fragments) in the itemBody.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Root Elements | assessmentItem
Model | responseDeclaration{0..*}, outcomeDeclaration{0..*}, templateDeclaration{0..*}, templateProcessing{0..1}, assessmentStimulusRef{0..*}, stylesheet{0..*}, itemBody{0..1}, responseProcessing{0..1}, modalFeedback{0..*}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | xs:normalizedString | No | Global | Required | -
title | xs:normalizedString | No | Global | Required | -
label | xs:normalizedString | No | Global | Optional | -
xml:lang | [ Import ] | No | Global | Optional | -
toolName | xs:normalizedString | No | Global | Optional | -
toolVersion | xs:normalizedString | No | Global | Optional | -
adaptive | xs:boolean | No | Global | Optional | false
timeDependent | xs:boolean | No | Global | Required | -
Source |
    <xs:complexType name="AssessmentItem.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="responseDeclaration" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="outcomeDeclaration" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="templateDeclaration" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="templateProcessing" minOccurs="0" maxOccurs="1" />
            <xs:element ref="assessmentStimulusRef" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="itemBody" minOccurs="0" maxOccurs="1" />
            <xs:element ref="responseProcessing" minOccurs="0" maxOccurs="1" />
            <xs:element ref="modalFeedback" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="apip:apipAccessibility" minOccurs="0" maxOccurs="1" />
        </xs:sequence>
        <xs:attributeGroup ref="identifier.AssessmentItem.Attr" />
        <xs:attributeGroup ref="title.AssessmentItem.Attr" />
        <xs:attributeGroup ref="label.AssessmentItem.Attr" />
        <xs:attributeGroup ref="language.AssessmentItem.Attr" />
        <xs:attributeGroup ref="toolName.AssessmentItem.Attr" />
        <xs:attributeGroup ref="toolVersion.AssessmentItem.Attr" />
        <xs:attributeGroup ref="adaptive.AssessmentItem.Attr" />
        <xs:attributeGroup ref="timeDependent.AssessmentItem.Attr" />
    </xs:complexType>

### 4.4.2 "AssessmentSection.Type" Root Complex Type Description

The XSD description for the "AssessmentSection.Type" Root ComplexType is given in Table 4.4.2.

Table 4.4.2 XSD description for the "AssessmentSection.Type" Root Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | An assessment section groups together individual item references and/or sub-sections. A section can be composed of any hierarchy/combination of items and sections. A section can only reference an item using an assessmentItemRef object but it may contain or reference other sections. The grouping of the sections/items depends upon the nature of the parent section i.e. each section can be used for different grouping criteria e.g. organizational, pedagogic, etc.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Root Elements | assessmentSection
Model | preCondition{0..*}, branchRule{0..*}, itemSessionControl{0..1}, timeLimits{0..1}, selection{0..1}, ordering{0..1}, rubricBlock{0..*}, ( xi:include{1..1} | assessmentItemRef{1..1} | assessmentSection{1..1} | assessmentSectionRef{1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | xs:normalizedString | No | Global | Required | -
required | xs:boolean | No | Global | Optional | false
fixed | xs:boolean | No | Global | Optional | false
title | xs:normalizedString | No | Global | Required | -
visible | xs:boolean | No | Global | Required | -
keepTogether | xs:boolean | No | Global | Optional | true
Source |
    <xs:complexType name="AssessmentSection.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="preCondition" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="branchRule" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="itemSessionControl" minOccurs="0" maxOccurs="1" />
            <xs:element ref="timeLimits" minOccurs="0" maxOccurs="1" />
            <xs:element ref="selection" minOccurs="0" maxOccurs="1" />
            <xs:element ref="ordering" minOccurs="0" maxOccurs="1" />
            <xs:element ref="rubricBlock" minOccurs="0" maxOccurs="unbounded" />
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                <xs:element ref="assessmentItemRef" minOccurs="1" maxOccurs="1" />
                <xs:element ref="assessmentSection" minOccurs="1" maxOccurs="1" />
                <xs:element ref="assessmentSectionRef" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="identifier.AssessmentSection.Attr" />
        <xs:attributeGroup ref="required.AssessmentSection.Attr" />
        <xs:attributeGroup ref="fixed.AssessmentSection.Attr" />
        <xs:attributeGroup ref="title.AssessmentSection.Attr" />
        <xs:attributeGroup ref="visible.AssessmentSection.Attr" />
        <xs:attributeGroup ref="keepTogether.AssessmentSection.Attr" />
    </xs:complexType>

### 4.4.3 "AssessmentStimulus.Type" Root Complex Type Description

The XSD description for the "AssessmentStimulus.Type" Root ComplexType is given in Table 4.4.3.

Table 4.4.3 XSD description for the "AssessmentStimulus.Type" Root Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | An assessment stimulus object is the used to enable content to be shared by several Assessment Items. The key feature is that this shared stimulus content must be supplied in the same context for each of the Assessment Items that make use of it. The assessment stimulus approach provides a mechanism to allow the stimulus content to be managed independently.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Root Elements | assessmentStimulus
Model | stylesheet{0..*}, stimulusBody{1..1}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | xs:normalizedString | No | Global | Required | -
title | xs:normalizedString | No | Global | Required | -
label | xs:normalizedString | No | Global | Optional | -
xml:lang | [ Import ] | No | Global | Optional | -
toolName | xs:normalizedString | No | Global | Optional | -
toolVersion | xs:normalizedString | No | Global | Optional | -
Source |
    <xs:complexType name="AssessmentStimulus.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="stimulusBody" minOccurs="1" maxOccurs="1" />
            <xs:element ref="apip:apipAccessibility" minOccurs="0" maxOccurs="1" />
        </xs:sequence>
        <xs:attributeGroup ref="identifier.AssessmentStimulus.Attr" />
        <xs:attributeGroup ref="title.AssessmentStimulus.Attr" />
        <xs:attributeGroup ref="label.AssessmentStimulus.Attr" />
        <xs:attributeGroup ref="language.AssessmentStimulus.Attr" />
        <xs:attributeGroup ref="toolName.AssessmentStimulus.Attr" />
        <xs:attributeGroup ref="toolVersion.AssessmentStimulus.Attr" />
    </xs:complexType>

### 4.4.4 "AssessmentTest.Type" Root Complex Type Description

The XSD description for the "AssessmentTest.Type" Root ComplexType is given in Table 4.4.4.

Table 4.4.4 XSD description for the "AssessmentTest.Type" Root Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | An assessment test is a group of assessmentItems with an associated set of rules that determine which of the items the candidate sees, in what order, and in what way the candidate interacts with them. The rules describe the valid paths through the test, when responses are submitted for response processing and when (if at all) feedback is to be given. Assessment tests are composed of one or more test parts.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Root Elements | assessmentTest
Model | outcomeDeclaration{0..*}, timeLimits{0..1}, stylesheet{0..*}, testPart{1..*}, outcomeProcessing{0..1}, testFeedback{0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | xs:normalizedString | No | Global | Required | -
title | xs:normalizedString | No | Global | Required | -
toolName | xs:normalizedString | No | Global | Optional | -
toolVersion | xs:normalizedString | No | Global | Optional | -
Source |
    <xs:complexType name="AssessmentTest.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="outcomeDeclaration" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="timeLimits" minOccurs="0" maxOccurs="1" />
            <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="testPart" minOccurs="1" maxOccurs="unbounded" />
            <xs:element ref="outcomeProcessing" minOccurs="0" maxOccurs="1" />
            <xs:element ref="testFeedback" minOccurs="0" maxOccurs="unbounded" />
        </xs:sequence>
        <xs:attributeGroup ref="identifier.AssessmentTest.Attr" />
        <xs:attributeGroup ref="title.AssessmentTest.Attr" />
        <xs:attributeGroup ref="toolName.AssessmentTest.Attr" />
        <xs:attributeGroup ref="toolVersion.AssessmentTest.Attr" />
    </xs:complexType>

### 4.4.5 "OutcomeDeclaration.Type" Root Complex Type Description

The XSD description for the "OutcomeDeclaration.Type" Root ComplexType is given in Table 4.4.5.

Table 4.4.5 XSD description for the "OutcomeDeclaration.Type" Root Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Outcome variables are declared by outcome declarations. Their value is set either from a default given in the declaration itself or by a responseRule during responseProcessing. Items that declare a numeric outcome variable representing the candidate's overall performance on the item should use the outcome name 'SCORE' for the variable. SCORE needs to be a float. Items that declare a maximum score (in multiple response choice interactions, for example) should do so by declaring the 'MAXSCORE' variable. MAXSCORE needs to be a float. Items or tests that want to make the fact that the candidate scored above a predefined treshold available as a variable should use the 'PASSED' variable. PASSED needs to be a boolean. At runtime, outcome variables are instantiated as part of an item session. Their values may be initialized with a default value and/or set during responseProcessing. If no default value is given in the declaration then the outcome variable is initialized to NULL unless the outcome is of a numeric type (integer or float) in which case it is initialized to 0. Declared outcomes with numeric types should indicate their range of possible values using normalMaximum and normalMinimum, especially if this range differs from [0,1].
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Root Elements | outcomeDeclaration
Model | defaultValue{0..1}, ( matchTable{1..1} | interpolationTable{1..1} ){0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
cardinality | [ Enumeration ] | No | Global | Required | -
baseType | [ Enumeration ] | No | Global | Optional | -
view | Enumerated List of View.Type | No | Global | Optional | -
interpretation | xs:string | No | Global | Optional | -
longInterpretation | xs:anyURI | No | Global | Optional | -
normalMaximum | NonNegativeDouble.Type | No | Global | Optional | -
normalMinimum | xs:double | No | Global | Optional | -
masteryValue | xs:double | No | Global | Optional | -
externalScored | [ Enumeration ] | No | Global | Optional | -
variableIdentifierRef | UniqueIdentifierRef.Type | No | Global | Optional | -
Source |
    <xs:complexType name="OutcomeDeclaration.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="defaultValue" minOccurs="0" maxOccurs="1" />
            <xs:choice minOccurs="0" maxOccurs="1">
                <xs:element ref="matchTable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="interpolationTable" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="identifier.OutcomeDeclaration.Attr" />
        <xs:attributeGroup ref="cardinality.OutcomeDeclaration.Attr" />
        <xs:attributeGroup ref="baseType.OutcomeDeclaration.Attr" />
        <xs:attributeGroup ref="view.OutcomeDeclaration.Attr" />
        <xs:attributeGroup ref="interpretation.OutcomeDeclaration.Attr" />
        <xs:attributeGroup ref="longInterpretation.OutcomeDeclaration.Attr" />
        <xs:attributeGroup ref="normalMaximum.OutcomeDeclaration.Attr" />
        <xs:attributeGroup ref="normalMinimum.OutcomeDeclaration.Attr" />
        <xs:attributeGroup ref="masteryValue.OutcomeDeclaration.Attr" />
        <xs:attributeGroup ref="externalScored.OutcomeDeclaration.Attr" />
        <xs:attributeGroup ref="variableIdentifierRef.OutcomeDeclaration.Attr" />
    </xs:complexType>

### 4.4.6 "ResponseProcessing.Type" Root Complex Type Description

The XSD description for the "ResponseProcessing.Type" Root ComplexType is given in Table 4.4.6.

Table 4.4.6 XSD description for the "ResponseProcessing.Type" Root Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Response processing is the process by which the Delivery Engine assigns outcomes based on the candidate's responses. The outcomes may be used to provide feedback to the candidate. Feedback is either provided immediately following the end of the candidate's attempt or it is provided at some later time, perhaps as part of a summary report on the item session. The end of an attempt, and therefore response processing, must only take place in direct response to a user action or in response to some expected event, such as the end of a test. An item session that enters the suspended state may have values for the response variables that have yet to be submitted for response processing.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Root Elements | responseProcessing
Model | ( xi:include{1..1} | responseCondition{1..1} | responseProcessingFragment{1..1} | setOutcomeValue{1..1} | exitResponse{1..1} | lookupOutcomeValue{1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
template | xs:anyURI | No | Global | Optional | -
templateLocation | xs:anyURI | No | Global | Optional | -
Source |
    <xs:complexType name="ResponseProcessing.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                <xs:element ref="responseCondition" minOccurs="1" maxOccurs="1" />
                <xs:element ref="responseProcessingFragment" minOccurs="1" maxOccurs="1" />
                <xs:element ref="setOutcomeValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="exitResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lookupOutcomeValue" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="template.ResponseProcessing.Attr" />
        <xs:attributeGroup ref="templateLocation.ResponseProcessing.Attr" />
    </xs:complexType>

## 4.5 Core Complex Type Descriptions

The syntax and semantics for the Core ComplexType XSD representations is described in Appendix A1.7.

### 4.5.1 "A.Type" Core Complex Type Description

The XSD description for the "A.Type" Core ComplexType is given in Table 4.5.1.

Table 4.5.1 XSD description for the "A.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This provides the functionality of the HTML 'a' tag and is used to identifiy a link. If the 'a' tag has an href attribute, then it represents a hyperlink (a hypertext anchor) labeled by its contents. If the a element has no href attribute, then the element represents a placeholder for where a link might otherwise have been placed, if it had been relevant, consisting of just the element's contents.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---A.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | a/TemplateBlock.Type, a/TemplateBlockFeedbackBlock.Type, a/ModalFeedback.Type, a/TestFeedback.Type, a/DD.Type, a/Div.Type, a/LI.Type, a/TDH.Type, a/InfoControl.Type, a/SimpleAssociableChoice.Type, a/SimpleChoice.Type, a/Object.Type, a/Prompt.Type, a/RubricBlock.Type, a/RubricBlockTemplateBlock.Type, a/BDO.Type, a/FeedbackBlock.Type, a/FeedbackInline.Type, a/GapText.Type, a/HotText.Type, a/InlineChoice.Type, a/Label.Type, a/A.Type, a/Caption.Type, a/DT.Type, a/HTMLText.Type, a/Q.Type, a/TemplateInline.Type, a/RubricBlockTemplateInline.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
href | xs:anyURI | No | Global | Required | -
type | MimeType.Type | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="A.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="gap" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="href.A.Attr" />
                <xs:attributeGroup ref="type.A.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.2 "AnyN.Type" Core Complex Type Description

The XSD description for the "AnyN.Type" Core ComplexType is given in Table 4.5.2.

Table 4.5.2 XSD description for the "AnyN.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is one of the expression functions. The 'anyN' operator takes one or more sub-expressions each with a base-type of boolean and single cardinality. The result is a single boolean which is true if at least min of the sub-expressions are true and at most max of the sub-expressions are true. If more than n - min sub-expressions are false (where n is the total number of sub-expressions) or more than max sub-expressions are true then the result is false. If one or more sub-expressions are NULL then it is possible that neither of these conditions is satisfied, in which case the operator results in NULL. For example, if min is 3 and max is 4 and the sub-expressions have values {true,true,false,NULL} then the operator results in NULL whereas {true,false,false,NULL} results in false and {true,true,true,NULL} results in true. The result NULL indicates that the correct value for the operator cannot be determined.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | anyN/AnyN.Type, anyN/BranchRule.Type, anyN/CustomOperator.Type, anyN/Equal.Type, anyN/EqualRounded.Type, anyN/FieldValue.Type, anyN/Index.Type, anyN/Inside.Type, anyN/Logic0toMany.Type, anyN/Logic1toMany.Type, anyN/LogicPair.Type, anyN/LogicSingle.Type, anyN/LookupOutcomeValue.Type, anyN/MathOperator.Type, anyN/OutcomeIf.Type, anyN/PatternMatch.Type, anyN/Repeat.Type, anyN/ResponseIf.Type, anyN/RoundTo.Type, anyN/SetValue.Type, anyN/StatsOperator.Type, anyN/StringMatch.Type, anyN/Substring.Type, anyN/TemplateConstraint.Type, anyN/TemplateDefault.Type, anyN/TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
min | Union [ IntegerOrVariableRef ] | No | Global | Required | -
max | Union [ IntegerOrVariableRef ] | No | Global | Required | -
Source |
    <xs:complexType name="AnyN.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="unbounded">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="min.AnyN.Attr" />
        <xs:attributeGroup ref="max.AnyN.Attr" />
    </xs:complexType>

### 4.5.3 "AreaMapping.Type" Core Complex Type Description

The XSD description for the "AreaMapping.Type" Core ComplexType is given in Table 4.5.3.

Table 4.5.3 XSD description for the "AreaMapping.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A special class used to create a mapping from a source set of point values to a target set of float values. When mapping containers, the result is the sum of the mapped values from the target set. See mapResponsePoint for details. The attributes have the same meaning as the similarly named attributes on mapping.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | areaMapping/ResponseDeclaration.Type
Model | areaMapEntry{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
lowerBound | xs:double | No | Global | Optional | -
upperBound | xs:double | No | Global | Optional | -
defaultValue | xs:double | No | Global | Optional | 0
Source |
    <xs:complexType name="AreaMapping.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="areaMapEntry" minOccurs="1" maxOccurs="unbounded" />
        </xs:sequence>
        <xs:attributeGroup ref="lowerBound.AreaMapping.Attr" />
        <xs:attributeGroup ref="upperBound.AreaMapping.Attr" />
        <xs:attributeGroup ref="defaultValue.AreaMapping.Attr" />
    </xs:complexType>

### 4.5.4 "AssessmentItemRef.Type" Core Complex Type Description

The XSD description for the "AssessmentItemRef.Type" Core ComplexType is given in Table 4.5.4.

Table 4.5.4 XSD description for the "AssessmentItemRef.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Items are incorporated into the test by reference and not by direct aggregation. Note that the identifier of the reference need not have any meaning outside the test. In particular it is not required to be unique in the context of any catalog, or be represented in the item's metadata. The syntax of this identifier is more restrictive than that of the identifier attribute of the assessmentItem itself.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | assessmentItemRef/AssessmentSection.Type
Model | preCondition{0..*}, branchRule{0..*}, itemSessionControl{0..1}, timeLimits{0..1}, variableMapping{0..*}, weight{0..*}, templateDefault{0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | xs:normalizedString | No | Global | Required | -
required | xs:boolean | No | Global | Optional | false
fixed | xs:boolean | No | Global | Optional | false
href | xs:anyURI | No | Global | Required | -
category | List of IdentifierList.Type | No | Global | Optional | -
Source |
    <xs:complexType name="AssessmentItemRef.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="preCondition" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="branchRule" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="itemSessionControl" minOccurs="0" maxOccurs="1" />
            <xs:element ref="timeLimits" minOccurs="0" maxOccurs="1" />
            <xs:element ref="variableMapping" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="weight" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="templateDefault" minOccurs="0" maxOccurs="unbounded" />
        </xs:sequence>
        <xs:attributeGroup ref="identifier.AssessmentItemRef.Attr" />
        <xs:attributeGroup ref="required.AssessmentItemRef.Attr" />
        <xs:attributeGroup ref="fixed.AssessmentItemRef.Attr" />
        <xs:attributeGroup ref="href.AssessmentItemRef.Attr" />
        <xs:attributeGroup ref="category.AssessmentItemRef.Attr" />
    </xs:complexType>

### 4.5.5 "AssociableHotspot.Type" Core Complex Type Description

The XSD description for the "AssociableHotspot.Type" Core ComplexType is given in Table 4.5.5.

Table 4.5.5 XSD description for the "AssociableHotspot.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is used to define the hotspots that are associated with the features in the 'graphicAssociateInteraction' and 'graphicGapMatchInteraction' interactions.
Diagram |
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---AssociableHotspot.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | associableHotspot/GraphicAssociateInteraction.Type, associableHotspot/GraphicGapMatchInteraction.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | show
matchGroup | List of IdentifierList.Type | No | Global | Optional | -
shape | [ Enumeration ] | No | Global | Required | -
coords | Coords.Type | No | Global | Required | -
hotspotLabel | xs:string | No | Global | Optional | -
matchMax | xs:nonNegativeInteger | No | Global | Required | -
matchMin | xs:nonNegativeInteger | No | Global | Optional | 0
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="AssociableHotspot.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBaseEmpty.Type">
                <xs:attributeGroup ref="identifier.AssociableHotspot.Attr" />
                <xs:attributeGroup ref="templateIdentifier.AssociableHotspot.Attr" />
                <xs:attributeGroup ref="showHide.AssociableHotspot.Attr" />
                <xs:attributeGroup ref="matchGroup.AssociableHotspot.Attr" />
                <xs:attributeGroup ref="shape.AssociableHotspot.Attr" />
                <xs:attributeGroup ref="coords.AssociableHotspot.Attr" />
                <xs:attributeGroup ref="hotspotLabel.AssociableHotspot.Attr" />
                <xs:attributeGroup ref="matchMax.AssociableHotspot.Attr" />
                <xs:attributeGroup ref="matchMin.AssociableHotspot.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.6 "AssociateInteraction.Type" Core Complex Type Description

The XSD description for the "AssociateInteraction.Type" Core ComplexType is given in Table 4.5.6.

Table 4.5.6 XSD description for the "AssociateInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | An Associate Interaction is a blockInteraction that presents candidates with a number of choices and allows them to create associations between them. The associateInteraction must be bound to a response variable with base-type pair and either single or multiple cardinality.
Diagram |
Type Hierarchy | BasePromptInteraction.Type ^---AssociateInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | associateInteraction/BlockQuote.Type, associateInteraction/FeedbackBlock.Type, associateInteraction/ItemBody.Type, associateInteraction/StimulusBody.Type, associateInteraction/DD.Type, associateInteraction/Div.Type, associateInteraction/LI.Type, associateInteraction/TDH.Type
Model | prompt{0..1}, simpleAssociableChoice{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
shuffle | xs:boolean | No | Global | Optional | false
maxAssociations | xs:nonNegativeInteger | No | Global | Optional | 1
minAssociations | xs:nonNegativeInteger | No | Global | Optional | 0
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="AssociateInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BasePromptInteraction.Type">
                <xs:sequence>
                    <xs:element ref="simpleAssociableChoice" minOccurs="1" maxOccurs="unbounded" />
                </xs:sequence>
                <xs:attributeGroup ref="shuffle.AssociateInteraction.Attr" />
                <xs:attributeGroup ref="maxAssociations.AssociateInteraction.Attr" />
                <xs:attributeGroup ref="minAssociations.AssociateInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.7 "BDO.Type" Core Complex Type Description

The XSD description for the "BDO.Type" Core ComplexType is given in Table 4.5.7.

Table 4.5.7 XSD description for the "BDO.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This enables the HTML 'bdo' tag. The 'bdo' tag represents explicit text directionality formatting control for its children. It allows authors to override the Unicode bidirectional algorithm by explicitly specifying a direction override. Authors must specify the dir attribute on this tag, with the value ltr to specify a left-to-right override and with the value rtl to specify a right-to-left override. The auto value must not be specified.
Diagram |
Type Hierarchy | BaseSequence.Type ^---BDO.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | bdo/TemplateBlock.Type, bdo/TemplateBlockFeedbackBlock.Type, bdo/ModalFeedback.Type, bdo/TestFeedback.Type, bdo/DD.Type, bdo/Div.Type, bdo/LI.Type, bdo/TDH.Type, bdo/InfoControl.Type, bdo/SimpleAssociableChoice.Type, bdo/SimpleChoice.Type, bdo/Object.Type, bdo/Prompt.Type, bdo/RubricBlock.Type, bdo/RubricBlockTemplateBlock.Type, bdo/BDO.Type, bdo/FeedbackBlock.Type, bdo/FeedbackInline.Type, bdo/GapText.Type, bdo/HotText.Type, bdo/InlineChoice.Type, bdo/Label.Type, bdo/A.Type, bdo/Caption.Type, bdo/DT.Type, bdo/HTMLText.Type, bdo/Q.Type, bdo/TemplateInline.Type, bdo/RubricBlockTemplateInline.Type
Model | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
title | xs:string | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="BDO.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequence.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="title.BDO.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.8 "BR.Type" Core Complex Type Description

The XSD description for the "BR.Type" Core ComplexType is given in Table 4.5.8.

Table 4.5.8 XSD description for the "BR.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This provides the functionality of the HTML 'br' tag. The 'br' tag represents a line break.This tag has no children.
Diagram |
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---BR.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | br/TemplateBlock.Type, br/TemplateBlockFeedbackBlock.Type, br/ModalFeedback.Type, br/TestFeedback.Type, br/DD.Type, br/Div.Type, br/LI.Type, br/TDH.Type, br/InfoControl.Type, br/SimpleAssociableChoice.Type, br/SimpleChoice.Type, br/Object.Type, br/Prompt.Type, br/RubricBlock.Type, br/RubricBlockTemplateBlock.Type, br/BDO.Type, br/FeedbackBlock.Type, br/FeedbackInline.Type, br/GapText.Type, br/HotText.Type, br/InlineChoice.Type, br/Label.Type, br/A.Type, br/Caption.Type, br/DT.Type, br/HTMLText.Type, br/Q.Type, br/TemplateInline.Type, br/RubricBlockTemplateInline.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="BR.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBaseEmpty.Type" />
        </xs:complexContent>
    </xs:complexType>

### 4.5.9 "BasePromptInteraction.Type" Core Complex Type Description

The XSD description for the "BasePromptInteraction.Type" Core ComplexType is given in Table 4.5.9.

Table 4.5.9 XSD description for the "BasePromptInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The BasePromptInteraction is the base class for the QTI interactions that support a Prompt. This also consists of a set of children characteristics.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
ComplexTypes | AssociateInteraction.Type, ChoiceInteraction.Type, DrawingInteraction.Type, ExtendedTextInteraction.Type, GapMatchInteraction.Type, GraphicAssociateInteraction.Type, HotTextInteraction.Type, HotspotInteraction.Type, MatchInteraction.Type, MediaInteraction.Type, OrderInteraction.Type, SelectPointInteraction.Type, SliderInteraction.Type, UploadInteraction.Type
Model | prompt{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | No | Global | Optional | -
class | List of StringList.Type | No | Global | Optional | -
xml:lang | [ Import ] | No | Global | Optional | -
label | xs:normalizedString | No | Global | Optional | -
xml:base | [ Import ] | No | Global | Optional | -
responseIdentifier | Identifier.Type | No | Global | Required | -
dir | [ Enumeration ] | No | Global | Optional | auto
role | [ Enumeration ] | No | Global | Optional | -
aria-controls | xs:IDREFS | No | Global | Optional | -
aria-describedby | xs:IDREFS | No | Global | Optional | -
aria-flowsto | xs:IDREFS | No | Global | Optional | -
aria-label | xs:normalizedString | No | Global | Optional | -
aria-labelledby | xs:IDREFS | No | Global | Optional | -
aria-level | ARIALevelInteger.Type | No | Global | Optional | -
aria-live | [ Enumeration ] | No | Global | Optional | -
aria-orientation | [ Enumeration ] | No | Global | Optional | horizontal
aria-owns | xs:IDREFS | No | Global | Optional | -
##any | [ Constrained Namespace Extension ] | No | Global | Optional | -
Source |
    <xs:complexType name="BasePromptInteraction.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="prompt" minOccurs="0" maxOccurs="1" />
        </xs:sequence>
        <xs:attributeGroup ref="id.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="class.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="language.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="label.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="base.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="responseIdentifier.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="dir.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="role.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="aria-controls.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="aria-describedby.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="aria-flowsto.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="aria-label.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="aria-labelledby.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="aria-level.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="aria-live.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="aria-orientation.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="aria-owns.BasePromptInteraction.Attr" />
        <xs:attributeGroup ref="dataExtension.BasePromptInteraction.Attr" />
    </xs:complexType>

### 4.5.10 "BaseSequence.Type" Core Complex Type Description

The XSD description for the "BaseSequence.Type" Core ComplexType is given in Table 4.5.10.

Table 4.5.10 XSD description for the "BaseSequence.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The BaseSequence class provides the base characteristics for some of the HTML tag and QTI interactions.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
ComplexTypes | BDO.Type, Caption.Type, ColGroup.Type, GapImg.Type, GapText.Type, InfoControl.Type, InlineChoice.Type, LI.Type, Prompt.Type, SimpleAssociableChoice.Type, SimpleChoice.Type, StimulusBody.Type, TDH.Type, TR.Type, TablePart.Type
Model | None
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | No | Global | Optional | -
class | List of StringList.Type | No | Global | Optional | -
xml:lang | [ Import ] | No | Global | Optional | -
label | xs:normalizedString | No | Global | Optional | -
dir | [ Enumeration ] | No | Global | Optional | auto
role | [ Enumeration ] | No | Global | Optional | -
aria-controls | xs:IDREFS | No | Global | Optional | -
aria-describedby | xs:IDREFS | No | Global | Optional | -
aria-flowto | xs:IDREFS | No | Global | Optional | -
aria-label | xs:normalizedString | No | Global | Optional | -
aria-labelledby | xs:IDREFS | No | Global | Optional | -
aria-level | ARIALevelInteger.Type | No | Global | Optional | -
aria-live | [ Enumeration ] | No | Global | Optional | off
aria-orientation | [ Enumeration ] | No | Global | Optional | horizontal
aria-owns | xs:IDREFS | No | Global | Optional | -
##any | [ Constrained Namespace Extension ] | No | Global | Optional | -
Source |
    <xs:complexType name="BaseSequence.Type" abstract="false" mixed="false">
        <xs:sequence>
        </xs:sequence>
        <xs:attributeGroup ref="id.BaseSequence.Attr" />
        <xs:attributeGroup ref="class.BaseSequence.Attr" />
        <xs:attributeGroup ref="language.BaseSequence.Attr" />
        <xs:attributeGroup ref="label.BaseSequence.Attr" />
        <xs:attributeGroup ref="dir.BaseSequence.Attr" />
        <xs:attributeGroup ref="role.BaseSequence.Attr" />
        <xs:attributeGroup ref="aria-controls.BaseSequence.Attr" />
        <xs:attributeGroup ref="aria-describedby.BaseSequence.Attr" />
        <xs:attributeGroup ref="aria-flowto.BaseSequence.Attr" />
        <xs:attributeGroup ref="aria-label.BaseSequence.Attr" />
        <xs:attributeGroup ref="aria-labelledby.BaseSequence.Attr" />
        <xs:attributeGroup ref="aria-level.BaseSequence.Attr" />
        <xs:attributeGroup ref="aria-live.BaseSequence.Attr" />
        <xs:attributeGroup ref="aria-orientation.BaseSequence.Attr" />
        <xs:attributeGroup ref="aria-owns.BaseSequence.Attr" />
        <xs:attributeGroup ref="dataExtension.BaseSequence.Attr" />
    </xs:complexType>

### 4.5.11 "BaseSequenceFull.Type" Core Complex Type Description

The XSD description for the "BaseSequenceFull.Type" Core ComplexType is given in Table 4.5.11.

Table 4.5.11 XSD description for the "BaseSequenceFull.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The BaseSequenceFull class provides the base characteristics for some of the QTI interactions that support the full set of base characteristics.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
ComplexTypes | CustomInteraction.Type, GraphicGapMatchInteraction.Type, GraphicOrderInteraction.Type, InlineChoiceInteraction.Type
Model | None
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | No | Global | Optional | -
class | List of StringList.Type | No | Global | Optional | -
xml:lang | [ Import ] | No | Global | Optional | -
label | xs:normalizedString | No | Global | Optional | -
responseIdentifier | Identifier.Type | No | Global | Required | -
xml:base | [ Import ] | No | Global | Optional | -
dir | [ Enumeration ] | No | Global | Optional | auto
role | [ Enumeration ] | No | Global | Optional | -
aria-controls | xs:IDREFS | No | Global | Optional | -
aria-describedby | xs:IDREFS | No | Global | Optional | -
aria-flowto | xs:IDREFS | No | Global | Optional | -
aria-label | xs:normalizedString | No | Global | Optional | -
aria-labelledby | xs:IDREFS | No | Global | Optional | -
aria-level | ARIALevelInteger.Type | No | Global | Optional | -
aria-live | [ Enumeration ] | No | Global | Optional | -
aria-orientation | [ Enumeration ] | No | Global | Optional | horizontal
aria-owns | xs:IDREFS | No | Global | Optional | -
##any | [ Constrained Namespace Extension ] | No | Global | Optional | -
Source |
    <xs:complexType name="BaseSequenceFull.Type" abstract="false" mixed="false">
        <xs:sequence>
        </xs:sequence>
        <xs:attributeGroup ref="id.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="class.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="language.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="label.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="responseIdentifier.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="base.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="dir.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="role.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="aria-controls.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="aria-describedby.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="aria-flowto.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="aria-label.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="aria-labelledby.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="aria-level.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="aria-live.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="aria-orientation.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="aria-owns.BaseSequenceFull.Attr" />
        <xs:attributeGroup ref="dataExtension.BaseSequenceFull.Attr" />
    </xs:complexType>

### 4.5.12 "BaseSequenceRIdent.Type" Core Complex Type Description

The XSD description for the "BaseSequenceRIdent.Type" Core ComplexType is given in Table 4.5.12.

Table 4.5.12 XSD description for the "BaseSequenceRIdent.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The BaseSequenceRIdent class provides the base characteristics (as per the BaseSequence plus 'rident') for some of the QTI interactions.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
ComplexTypes | PositionObjectInteraction.Type
Model | None
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | No | Global | Optional | -
class | List of StringList.Type | No | Global | Optional | -
xml:lang | [ Import ] | No | Global | Optional | -
label | xs:normalizedString | No | Global | Optional | -
responseIdentifier | Identifier.Type | No | Global | Required | -
dir | [ Enumeration ] | No | Global | Optional | auto
role | [ Enumeration ] | No | Global | Optional | -
aria-controls | xs:IDREFS | No | Global | Optional | -
aria-describedby | xs:IDREFS | No | Global | Optional | -
aria-flowto | xs:IDREFS | No | Global | Optional | -
aria-label | xs:normalizedString | No | Global | Optional | -
aria-labelledby | xs:IDREFS | No | Global | Optional | -
aria-level | ARIALevelInteger.Type | No | Global | Optional | -
aria-live | [ Enumeration ] | No | Global | Optional | -
aria-orientation | [ Enumeration ] | No | Global | Optional | horizontal
aria-owns | xs:IDREFS | No | Global | Optional | -
##any | [ Constrained Namespace Extension ] | No | Global | Optional | -
Source |
    <xs:complexType name="BaseSequenceRIdent.Type" abstract="false" mixed="false">
        <xs:sequence>
        </xs:sequence>
        <xs:attributeGroup ref="id.BaseSequenceRIdent.Attr" />
        <xs:attributeGroup ref="class.BaseSequenceRIdent.Attr" />
        <xs:attributeGroup ref="language.BaseSequenceRIdent.Attr" />
        <xs:attributeGroup ref="label.BaseSequenceRIdent.Attr" />
        <xs:attributeGroup ref="responseIdentifier.BaseSequenceRIdent.Attr" />
        <xs:attributeGroup ref="dir.BaseSequenceRIdent.Attr" />
        <xs:attributeGroup ref="role.BaseSequenceRIdent.Attr" />
        <xs:attributeGroup ref="aria-controls.BaseSequenceRIdent.Attr" />
        <xs:attributeGroup ref="aria-describedby.BaseSequenceRIdent.Attr" />
        <xs:attributeGroup ref="aria-flowto.BaseSequenceRIdent.Attr" />
        <xs:attributeGroup ref="aria-label.BaseSequenceRIdent.Attr" />
        <xs:attributeGroup ref="aria-labelledby.BaseSequenceRIdent.Attr" />
        <xs:attributeGroup ref="aria-level.BaseSequenceRIdent.Attr" />
        <xs:attributeGroup ref="aria-live.BaseSequenceRIdent.Attr" />
        <xs:attributeGroup ref="aria-orientation.BaseSequenceRIdent.Attr" />
        <xs:attributeGroup ref="aria-owns.BaseSequenceRIdent.Attr" />
        <xs:attributeGroup ref="dataExtension.BaseSequenceRIdent.Attr" />
    </xs:complexType>

### 4.5.13 "BaseSequenceXBase.Type" Core Complex Type Description

The XSD description for the "BaseSequenceXBase.Type" Core ComplexType is given in Table 4.5.13.

Table 4.5.13 XSD description for the "BaseSequenceXBase.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The BaseSequenceXBase class provides the base characteristics (as per the BaseSequence plus 'base') for some of the HTML tags and QTI interactions.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
ComplexTypes | A.Type, BlockQuote.Type, DD.Type, DL.Type, DT.Type, Div.Type, FeedbackBlock.Type, FeedbackInline.Type, HTMLText.Type, HotText.Type, Label.Type, OUL.Type, Object.Type, Q.Type, RubricBlock.Type, RubricBlockTemplateBlock.Type, RubricBlockTemplateInline.Type, Table.Type, TemplateBlock.Type, TemplateBlockFeedbackBlock.Type, TemplateInline.Type
Model | None
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | No | Global | Optional | -
class | List of StringList.Type | No | Global | Optional | -
xml:lang | [ Import ] | No | Global | Optional | -
label | xs:normalizedString | No | Global | Optional | -
xml:base | [ Import ] | No | Global | Optional | -
dir | [ Enumeration ] | No | Global | Optional | auto
role | [ Enumeration ] | No | Global | Optional | -
aria-controls | xs:IDREFS | No | Global | Optional | -
aria-describedby | xs:IDREFS | No | Global | Optional | -
aria-flowto | xs:IDREFS | No | Global | Optional | -
aria-label | xs:normalizedString | No | Global | Optional | -
aria-labelledby | xs:IDREFS | No | Global | Optional | -
aria-level | ARIALevelInteger.Type | No | Global | Optional | -
aria-live | [ Enumeration ] | No | Global | Optional | -
aria-orientation | [ Enumeration ] | No | Global | Optional | horizontal
aria-owns | xs:IDREFS | No | Global | Optional | -
##any | [ Constrained Namespace Extension ] | No | Global | Optional | -
Source |
    <xs:complexType name="BaseSequenceXBase.Type" abstract="false" mixed="false">
        <xs:sequence>
        </xs:sequence>
        <xs:attributeGroup ref="id.BaseSequenceXBase.Attr" />
        <xs:attributeGroup ref="class.BaseSequenceXBase.Attr" />
        <xs:attributeGroup ref="language.BaseSequenceXBase.Attr" />
        <xs:attributeGroup ref="label.BaseSequenceXBase.Attr" />
        <xs:attributeGroup ref="base.BaseSequenceXBase.Attr" />
        <xs:attributeGroup ref="dir.BaseSequenceXBase.Attr" />
        <xs:attributeGroup ref="role.BaseSequenceXBase.Attr" />
        <xs:attributeGroup ref="aria-controls.BaseSequenceXBase.Attr" />
        <xs:attributeGroup ref="aria-describedby.BaseSequenceXBase.Attr" />
        <xs:attributeGroup ref="aria-flowto.BaseSequenceXBase.Attr" />
        <xs:attributeGroup ref="aria-label.BaseSequenceXBase.Attr" />
        <xs:attributeGroup ref="aria-labelledby.BaseSequenceXBase.Attr" />
        <xs:attributeGroup ref="aria-level.BaseSequenceXBase.Attr" />
        <xs:attributeGroup ref="aria-live.BaseSequenceXBase.Attr" />
        <xs:attributeGroup ref="aria-orientation.BaseSequenceXBase.Attr" />
        <xs:attributeGroup ref="aria-owns.BaseSequenceXBase.Attr" />
        <xs:attributeGroup ref="dataExtension.BaseSequenceXBase.Attr" />
    </xs:complexType>

### 4.5.14 "BlockQuote.Type" Core Complex Type Description

The XSD description for the "BlockQuote.Type" Core ComplexType is given in Table 4.5.14.

Table 4.5.14 XSD description for the "BlockQuote.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This defines the content of the 'blockquote' HTML tag. The 'blockquote' tag represents content that is quoted from another source, optionally with a citation which must be within a footer or cite element, and optionally with in-line changes such as annotations and abbreviations. Content inside a blockquote other than citations and in-line changes must be quoted from another source, whose address, if it has one, may be cited in the cite attribute. The content of a blockquote may be abbreviated, may have context added or may have annotations. Any such additions or changes to quoted text must be indicated in the text (at the text level). This may mean the use of notational conventions or explicit remarks, such as "emphasis mine".
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---BlockQuote.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | blockquote/BlockQuote.Type, blockquote/FeedbackBlock.Type, blockquote/ItemBody.Type, blockquote/StimulusBody.Type, blockquote/GapMatchInteraction.Type, blockquote/HotTextInteraction.Type, blockquote/TemplateBlock.Type, blockquote/TemplateBlockFeedbackBlock.Type, blockquote/ModalFeedback.Type, blockquote/TestFeedback.Type, blockquote/DD.Type, blockquote/Div.Type, blockquote/LI.Type, blockquote/TDH.Type, blockquote/InfoControl.Type, blockquote/SimpleAssociableChoice.Type, blockquote/SimpleChoice.Type, blockquote/Object.Type, blockquote/Prompt.Type, blockquote/RubricBlock.Type, blockquote/RubricBlockTemplateBlock.Type
Model | ( positionObjectStage{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | feedbackBlock{1..1} | templateBlock{1..1} | infoControl{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | hr{1..1} | blockquote{1..1} | table{1..1} | div{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:audio{1..1} | qh5:figure{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:video{1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
cite | xs:anyURI | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="BlockQuote.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="positionObjectStage" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="drawingInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="gapMatchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="matchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicGapMatchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hotspotInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicOrderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="selectPointInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicAssociateInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="sliderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="choiceInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="mediaInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hottextInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="orderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="extendedTextInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="uploadInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="associateInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="infoControl" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="cite.BlockQuote.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.15 "BranchRule.Type" Core Complex Type Description

The XSD description for the "BranchRule.Type" Core ComplexType is given in Table 4.5.15.

Table 4.5.15 XSD description for the "BranchRule.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A branch-rule is a simple expression attached to an assessmentItemRef, assessmentSection or testPart that is evaluated after the item, section or part has been presented to the candidate. If the expression evaluates to 'true' the test jumps forward to the item, section or part referred to by the target identifier. In the case of an item or section, the target must refer to an item or section in the same testPart that has not yet been presented. For testParts, the target must refer to another testPart.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | branchRule/AssessmentItemRef.Type, branchRule/AssessmentSection.Type, branchRule/TestPart.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
target | Identifier.Type | No | Global | Required | -
Source |
    <xs:complexType name="BranchRule.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="1">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="target.BranchRule.Attr" />
    </xs:complexType>

### 4.5.16 "Caption.Type" Core Complex Type Description

The XSD description for the "Caption.Type" Core ComplexType is given in Table 4.5.16.

Table 4.5.16 XSD description for the "Caption.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Provides the HTML 'caption' tag functionality. The 'caption' tag represents the title of the table that is its parent, if it has a parent and that is a 'table' tag. The caption tag takes part in the table model. When a table tag is the only content in a figure tag other than the figcaption, the caption tag should be omitted in favor of the figcaption. A caption can introduce context for a table, making it significantly easier to understand.
Diagram |
Type Hierarchy | BaseSequence.Type ^---Caption.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | caption/Table.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="Caption.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequence.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="gap" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.17 "ChoiceInteraction.Type" Core Complex Type Description

The XSD description for the "ChoiceInteraction.Type" Core ComplexType is given in Table 4.5.17.

Table 4.5.17 XSD description for the "ChoiceInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The choice interaction presents a set of choices to the candidate. The candidate's task is to select one or more of the choices, up to a maximum of maxChoices. The interaction is always initialized with no choices selected. The choiceInteraction must be bound to a response variable with a baseType of identifier and single or multiple cardinality.
Diagram |
Type Hierarchy | BasePromptInteraction.Type ^---ChoiceInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | choiceInteraction/BlockQuote.Type, choiceInteraction/FeedbackBlock.Type, choiceInteraction/ItemBody.Type, choiceInteraction/StimulusBody.Type, choiceInteraction/DD.Type, choiceInteraction/Div.Type, choiceInteraction/LI.Type, choiceInteraction/TDH.Type
Model | prompt{0..1}, simpleChoice{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
shuffle | xs:boolean | No | Global | Optional | false
maxChoices | xs:nonNegativeInteger | No | Global | Optional | 1
minChoices | xs:nonNegativeInteger | No | Global | Optional | 0
orientation | [ Enumeration ] | No | Global | Optional | vertical
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="ChoiceInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BasePromptInteraction.Type">
                <xs:sequence>
                    <xs:element ref="simpleChoice" minOccurs="1" maxOccurs="unbounded" />
                </xs:sequence>
                <xs:attributeGroup ref="shuffle.ChoiceInteraction.Attr" />
                <xs:attributeGroup ref="maxChoices.ChoiceInteraction.Attr" />
                <xs:attributeGroup ref="minChoices.ChoiceInteraction.Attr" />
                <xs:attributeGroup ref="orientation.ChoiceInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.18 "Col.Type" Core Complex Type Description

The XSD description for the "Col.Type" Core ComplexType is given in Table 4.5.18.

Table 4.5.18 XSD description for the "Col.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Provides the functionality of the HTML 'col' tag. If a 'col' tag has a parent and that is a colgroup tag that itself has a parent that is a table tag, then the col tag represents one or more columns in the column group represented by that colgroup. The tag may have a span content attribute specified, whose value must be a valid non-negative integer greater than zero. The col tag and its span attribute take part in the table model.
Diagram |
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---Col.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | col/ColGroup.Type, col/Table.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
span | xs:int | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="Col.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBaseEmpty.Type">
                <xs:attributeGroup ref="span.Col.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.19 "ColGroup.Type" Core Complex Type Description

The XSD description for the "ColGroup.Type" Core ComplexType is given in Table 4.5.19.

Table 4.5.19 XSD description for the "ColGroup.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Provides the functionality of the HTML 'colgroup' tag. The colgroup element represents a group of one or more columns in the table that is its parent, if it has a parent and that is a table element. If the colgroup element contains no col elements, then the element may have a span content attribute specified, whose value must be a valid non-negative integer greater than zero. The colgroup element and its span attribute take part in the table model.
Diagram |
Type Hierarchy | BaseSequence.Type ^---ColGroup.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | colgroup/Table.Type
Model | col{0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
span | xs:int | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="ColGroup.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequence.Type">
                <xs:sequence>
                    <xs:element ref="col" minOccurs="0" maxOccurs="unbounded" />
                </xs:sequence>
                <xs:attributeGroup ref="span.ColGroup.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.20 "CorrectResponse.Type" Core Complex Type Description

The XSD description for the "CorrectResponse.Type" Core ComplexType is given in Table 4.5.20.

Table 4.5.20 XSD description for the "CorrectResponse.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This class is used to define, as part of the response declaration, the values(s) for the correct response.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | correctResponse/ResponseDeclaration.Type
Model | value{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
interpretation | xs:string | No | Global | Optional | -
Source |
    <xs:complexType name="CorrectResponse.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="value" minOccurs="1" maxOccurs="unbounded" />
        </xs:sequence>
        <xs:attributeGroup ref="interpretation.CorrectResponse.Attr" />
    </xs:complexType>

### 4.5.21 "CustomInteraction.Type" Core Complex Type Description

The XSD description for the "CustomInteraction.Type" Core ComplexType is given in Table 4.5.21.

Table 4.5.21 XSD description for the "CustomInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The custom interaction provides an opportunity for extensibility of this specification to include support for interactions not currently documented. The Portable Custom Interaction specification should be used in conjunction with this class [PCI, 14].
Diagram |
Type Hierarchy | BaseSequenceFull.Type ^---CustomInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | customInteraction/BlockQuote.Type, customInteraction/FeedbackBlock.Type, customInteraction/ItemBody.Type, customInteraction/StimulusBody.Type, customInteraction/DD.Type, customInteraction/Div.Type, customInteraction/LI.Type, customInteraction/TDH.Type, customInteraction/A.Type, customInteraction/Caption.Type, customInteraction/DT.Type, customInteraction/HTMLText.Type, customInteraction/Q.Type
Model | Namespace-based Extension
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
##other | [ Namespace Extension ] | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="CustomInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceFull.Type">
                <xs:sequence>
                    <xs:group ref="grpAnyLax.any" />
                </xs:sequence>
                <xs:attributeGroup ref="extension.CustomInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.22 "CustomOperator.Type" Core Complex Type Description

The XSD description for the "CustomOperator.Type" Core ComplexType is given in Table 4.5.22.

Table 4.5.22 XSD description for the "CustomOperator.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The custom operator provides an extension mechanism for defining operations not currently supported by this specification. It has been suggested that customOperator might be used to help link processing rules defined by this specification to instances of web-service based processing engines. For example, a web-service which offered automated marking of free text responses. Implementors experimenting with this approach are encouraged to share information about their solutions to help determine the best way to achieve this type of processing.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | customOperator/AnyN.Type, customOperator/BranchRule.Type, customOperator/CustomOperator.Type, customOperator/Equal.Type, customOperator/EqualRounded.Type, customOperator/FieldValue.Type, customOperator/Index.Type, customOperator/Inside.Type, customOperator/Logic0toMany.Type, customOperator/Logic1toMany.Type, customOperator/LogicPair.Type, customOperator/LogicSingle.Type, customOperator/LookupOutcomeValue.Type, customOperator/MathOperator.Type, customOperator/OutcomeIf.Type, customOperator/PatternMatch.Type, customOperator/Repeat.Type, customOperator/ResponseIf.Type, customOperator/RoundTo.Type, customOperator/SetValue.Type, customOperator/StatsOperator.Type, customOperator/StringMatch.Type, customOperator/Substring.Type, customOperator/TemplateConstraint.Type, customOperator/TemplateDefault.Type, customOperator/TemplateIf.Type, customOperator/NumericLogic1toMany.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){0..*}, { Namespace Extension }
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
class | Identifier.Type | No | Global | Optional | -
definition | xs:anyURI | No | Global | Optional | -
##other | [ Namespace Extension ] | No | Global | Optional | -
Source |
    <xs:complexType name="CustomOperator.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
            <xs:group ref="grpLax.any" />
        </xs:sequence>
        <xs:attributeGroup ref="class.CustomOperator.Attr" />
        <xs:attributeGroup ref="definition.CustomOperator.Attr" />
        <xs:attributeGroup ref="extension.CustomOperator.Attr" />
    </xs:complexType>

### 4.5.23 "DD.Type" Core Complex Type Description

The XSD description for the "DD.Type" Core ComplexType is given in Table 4.5.23.

Table 4.5.23 XSD description for the "DD.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The 'dd' tag is a part of the HTML content. The 'dd' tag represents the description, definition, or value, part of a term-description group in a description list ('dl' tag).
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---DD.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | dd/DL.Type
Model | ( printedVariable{1..1} | feedbackBlock{1..1} | hottext{1..1} | feedbackInline{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | textEntryInteraction{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="DD.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="drawingInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="gapMatchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="matchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicGapMatchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hotspotInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicOrderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="selectPointInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicAssociateInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="sliderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="choiceInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="mediaInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hottextInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="orderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="extendedTextInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="uploadInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="associateInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.24 "DL.Type" Core Complex Type Description

The XSD description for the "DL.Type" Core ComplexType is given in Table 4.5.24.

Table 4.5.24 XSD description for the "DL.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Denotes the 'dl' HTML tag. The 'dl' tag represents an association list consisting of zero or more name-value groups (a description list). A name-value group consists of one or more names ('dt' tags) followed by one or more values ('dd' tags), ignoring any nodes other than 'dt' and 'dd' tags. Within a single 'dl' tag, there should not be more than one 'dt' tag for each name.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---DL.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | dl/BlockQuote.Type, dl/FeedbackBlock.Type, dl/ItemBody.Type, dl/StimulusBody.Type, dl/GapMatchInteraction.Type, dl/HotTextInteraction.Type, dl/TemplateBlock.Type, dl/TemplateBlockFeedbackBlock.Type, dl/ModalFeedback.Type, dl/TestFeedback.Type, dl/DD.Type, dl/Div.Type, dl/LI.Type, dl/TDH.Type, dl/InfoControl.Type, dl/SimpleAssociableChoice.Type, dl/SimpleChoice.Type, dl/Object.Type, dl/Prompt.Type, dl/RubricBlock.Type, dl/RubricBlockTemplateBlock.Type
Model | ( dd{1..1} | dt{1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="DL.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="dd" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="dt" minOccurs="1" maxOccurs="1" />
                    </xs:choice>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.25 "DT.Type" Core Complex Type Description

The XSD description for the "DT.Type" Core ComplexType is given in Table 4.5.25.

Table 4.5.25 XSD description for the "DT.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The 'dt' tag is a part of the HTML content. The 'dt' tag represents the term, or name, part of a term-description group in a description list (dl element).
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---DT.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | dt/DL.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="DT.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="gap" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.26 "DefaultValue.Type" Core Complex Type Description

The XSD description for the "DefaultValue.Type" Core ComplexType is given in Table 4.5.26.

Table 4.5.26 XSD description for the "DefaultValue.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Defines the default value of the associated response, outcome and template variable.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | defaultValue/OutcomeDeclaration.Type, defaultValue/ResponseDeclaration.Type, defaultValue/TemplateDeclaration.Type
Model | value{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
interpretation | xs:normalizedString | No | Global | Optional | -
Source |
    <xs:complexType name="DefaultValue.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="value" minOccurs="1" maxOccurs="unbounded" />
        </xs:sequence>
        <xs:attributeGroup ref="interpretation.DefaultValue.Attr" />
    </xs:complexType>

### 4.5.27 "Div.Type" Core Complex Type Description

The XSD description for the "Div.Type" Core ComplexType is given in Table 4.5.27.

Table 4.5.27 XSD description for the "Div.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This provides the functionality of the HTML 'div' tag. The div tag has no special meaning at all. It represents its children. It can be used with the class, lang, and title characteristics to mark up semantics common to a group of consecutive elements. Authors are strongly encouraged to view the div tag as an element of last resort, for when no other element is suitable. Use of more appropriate elements instead of the div element leads to better accessibility for readers and easier maintainability for authors.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---Div.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | div/BlockQuote.Type, div/FeedbackBlock.Type, div/ItemBody.Type, div/StimulusBody.Type, div/GapMatchInteraction.Type, div/HotTextInteraction.Type, div/TemplateBlock.Type, div/TemplateBlockFeedbackBlock.Type, div/ModalFeedback.Type, div/TestFeedback.Type, div/DD.Type, div/Div.Type, div/LI.Type, div/TDH.Type, div/InfoControl.Type, div/SimpleAssociableChoice.Type, div/SimpleChoice.Type, div/Object.Type, div/Prompt.Type, div/RubricBlock.Type, div/RubricBlockTemplateBlock.Type
Model | ( positionObjectStage{1..1} | ( printedVariable{1..1} | feedbackBlock{1..1} | hottext{1..1} | feedbackInline{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | textEntryInteraction{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="Div.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="positionObjectStage" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="drawingInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="gapMatchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="matchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicGapMatchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hotspotInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicOrderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="selectPointInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicAssociateInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sliderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="choiceInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="mediaInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hottextInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="orderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="extendedTextInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="uploadInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="associateInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.28 "DrawingInteraction.Type" Core Complex Type Description

The XSD description for the "DrawingInteraction.Type" Core ComplexType is given in Table 4.5.28.

Table 4.5.28 XSD description for the "DrawingInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The drawing interaction allows the candidate to use a common set of drawing tools to modify a given graphical image (the canvas). It must be bound to a response variable with base-type file and single cardinality. The result is a file in the same format as the original image.
Diagram |
Type Hierarchy | BasePromptInteraction.Type ^---DrawingInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | drawingInteraction/BlockQuote.Type, drawingInteraction/FeedbackBlock.Type, drawingInteraction/ItemBody.Type, drawingInteraction/StimulusBody.Type, drawingInteraction/DD.Type, drawingInteraction/Div.Type, drawingInteraction/LI.Type, drawingInteraction/TDH.Type
Model | prompt{0..1}, object{1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="DrawingInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BasePromptInteraction.Type">
                <xs:sequence>
                    <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.29 "EndAttemptInteraction.Type" Core Complex Type Description

The XSD description for the "EndAttemptInteraction.Type" Core ComplexType is given in Table 4.5.29.

Table 4.5.29 XSD description for the "EndAttemptInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The end attempt interaction is a special type of interaction which allows item authors to provide the candidate with control over the way in which the candidate terminates an attempt. The candidate can use the interaction to terminate the attempt (triggering response processing) immediately, typically to request a hint. It must be bound to a response variable with base-type boolean and single cardinality. If the candidate invokes response processing using an endAttemptInteraction then the associated response variable is set to 'true'. If response processing is invoked in any other way, either through a different endAttemptInteraction or through the default method for the delivery engine, then the associated response variable is set to 'false'. The default value of the response variable is always ignored.
Diagram |
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---EndAttemptInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | endAttemptInteraction/DD.Type, endAttemptInteraction/Div.Type, endAttemptInteraction/LI.Type, endAttemptInteraction/TDH.Type, endAttemptInteraction/A.Type, endAttemptInteraction/Caption.Type, endAttemptInteraction/DT.Type, endAttemptInteraction/HTMLText.Type, endAttemptInteraction/Q.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | No | Global | Required | -
title | xs:string | No | Global | Required | -
countAttempt | xs:boolean | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="EndAttemptInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBaseEmpty.Type">
                <xs:attributeGroup ref="responseIdentifier.EndAttemptInteraction.Attr" />
                <xs:attributeGroup ref="title.EndAttemptInteraction.Attr" />
                <xs:attributeGroup ref="countAttempt.EndAttemptInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.30 "Equal.Type" Core Complex Type Description

The XSD description for the "Equal.Type" Core ComplexType is given in Table 4.5.30.

Table 4.5.30 XSD description for the "Equal.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The equal operator takes two sub-expressions which must both have single cardinality and have a numerical base-type. The result is a single boolean with a value of 'true' if the two expressions are numerically equal and 'false' if they are not. If either sub-expression is NULL then the operator results in NULL.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | equal/AnyN.Type, equal/BranchRule.Type, equal/CustomOperator.Type, equal/Equal.Type, equal/EqualRounded.Type, equal/FieldValue.Type, equal/Index.Type, equal/Inside.Type, equal/Logic0toMany.Type, equal/Logic1toMany.Type, equal/LogicPair.Type, equal/LogicSingle.Type, equal/LookupOutcomeValue.Type, equal/MathOperator.Type, equal/OutcomeIf.Type, equal/PatternMatch.Type, equal/Repeat.Type, equal/ResponseIf.Type, equal/RoundTo.Type, equal/SetValue.Type, equal/StatsOperator.Type, equal/StringMatch.Type, equal/Substring.Type, equal/TemplateConstraint.Type, equal/TemplateDefault.Type, equal/TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
toleranceMode | [ Enumeration ] | No | Global | Optional | exact
tolerance | List of ToleranceList.Type | No | Global | Optional | -
includeLowerBound | xs:boolean | No | Global | Optional | true
includeUpperBound | xs:boolean | No | Global | Optional | true
Source |
    <xs:complexType name="Equal.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="2" maxOccurs="2">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="toleranceMode.Equal.Attr" />
        <xs:attributeGroup ref="tolerance.Equal.Attr" />
        <xs:attributeGroup ref="includeLowerBound.Equal.Attr" />
        <xs:attributeGroup ref="includeUpperBound.Equal.Attr" />
    </xs:complexType>

### 4.5.31 "EqualRounded.Type" Core Complex Type Description

The XSD description for the "EqualRounded.Type" Core ComplexType is given in Table 4.5.31.

Table 4.5.31 XSD description for the "EqualRounded.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The equalRounded operator takes two sub-expressions which must both have single cardinality and have a numerical base-type. The result is a single boolean with a value of 'true' if the two expressions are numerically equal after rounding and 'false' if they are not. If either sub-expression is NULL then the operator results in NULL.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | equalRounded/AnyN.Type, equalRounded/BranchRule.Type, equalRounded/CustomOperator.Type, equalRounded/Equal.Type, equalRounded/EqualRounded.Type, equalRounded/FieldValue.Type, equalRounded/Index.Type, equalRounded/Inside.Type, equalRounded/Logic0toMany.Type, equalRounded/Logic1toMany.Type, equalRounded/LogicPair.Type, equalRounded/LogicSingle.Type, equalRounded/LookupOutcomeValue.Type, equalRounded/MathOperator.Type, equalRounded/OutcomeIf.Type, equalRounded/PatternMatch.Type, equalRounded/Repeat.Type, equalRounded/ResponseIf.Type, equalRounded/RoundTo.Type, equalRounded/SetValue.Type, equalRounded/StatsOperator.Type, equalRounded/StringMatch.Type, equalRounded/Substring.Type, equalRounded/TemplateConstraint.Type, equalRounded/TemplateDefault.Type, equalRounded/TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
roundingMode | [ Enumeration ] | No | Global | Optional | significantFigures
figures | Union [ IntegerOrVariableRef ] | No | Global | Required | -
Source |
    <xs:complexType name="EqualRounded.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="2" maxOccurs="2">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="roundingMode.EqualRounded.Attr" />
        <xs:attributeGroup ref="figures.EqualRounded.Attr" />
    </xs:complexType>

### 4.5.32 "ExtendedTextInteraction.Type" Core Complex Type Description

The XSD description for the "ExtendedTextInteraction.Type" Core ComplexType is given in Table 4.5.32.

Table 4.5.32 XSD description for the "ExtendedTextInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | An Extended Text Interaction is a blockInteraction that allows the candidate to enter an extended amount of text. The extendedTextInteraction must be bound to a response variable of single, multiple, ordered or record cardinality. If the response variable has record cardinality the fields in the record must be 'stringValue', 'floatValue', etc. Otherwise it ust have a baseType of string, integer or float. When bound to response variable with single cardinality a single string of text is required from the candidate. When bound to a response variable with multiple or ordered cardinality several separate text strings may be required.
Diagram |
Type Hierarchy | BasePromptInteraction.Type ^---ExtendedTextInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | extendedTextInteraction/BlockQuote.Type, extendedTextInteraction/FeedbackBlock.Type, extendedTextInteraction/ItemBody.Type, extendedTextInteraction/StimulusBody.Type, extendedTextInteraction/DD.Type, extendedTextInteraction/Div.Type, extendedTextInteraction/LI.Type, extendedTextInteraction/TDH.Type
Model | None
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
base | xs:int | No | Global | Optional | 10
stringIdentifier | Identifier.Type | No | Global | Optional | -
expectedLength | xs:nonNegativeInteger | No | Global | Optional | -
patternMask | xs:string | No | Global | Optional | -
placeholderText | xs:string | No | Global | Optional | -
maxStrings | xs:nonNegativeInteger | No | Global | Optional | -
minStrings | xs:nonNegativeInteger | No | Global | Optional | 0
expectedLines | xs:nonNegativeInteger | No | Global | Optional | -
format | [ Enumeration ] | No | Global | Optional | plain
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="ExtendedTextInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BasePromptInteraction.Type">
                <xs:attributeGroup ref="base.ExtendedTextInteraction.Attr" />
                <xs:attributeGroup ref="stringIdentifier.ExtendedTextInteraction.Attr" />
                <xs:attributeGroup ref="expectedLength.ExtendedTextInteraction.Attr" />
                <xs:attributeGroup ref="patternMask.ExtendedTextInteraction.Attr" />
                <xs:attributeGroup ref="placeholderText.ExtendedTextInteraction.Attr" />
                <xs:attributeGroup ref="maxStrings.ExtendedTextInteraction.Attr" />
                <xs:attributeGroup ref="minStrings.ExtendedTextInteraction.Attr" />
                <xs:attributeGroup ref="expectedLines.ExtendedTextInteraction.Attr" />
                <xs:attributeGroup ref="format.ExtendedTextInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.33 "FeedbackBlock.Type" Core Complex Type Description

The XSD description for the "FeedbackBlock.Type" Core ComplexType is given in Table 4.5.33.

Table 4.5.33 XSD description for the "FeedbackBlock.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This class is used to defne the feedback content that can be presented to the learner. A feedback element that forms part of a Non-adaptive Item must not contain an interaction object, either directly or indirectly. When an interaction is contained in a hidden feedback element it must also be hidden. The candidate must not be able to set or update the value of the associated response variables. Feedback elements can be embedded inside each other, with one exception: feedBackInline cannot contain feedbackBlock elements.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---FeedbackBlock.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | feedbackBlock/BlockQuote.Type, feedbackBlock/FeedbackBlock.Type, feedbackBlock/ItemBody.Type, feedbackBlock/StimulusBody.Type, feedbackBlock/GapMatchInteraction.Type, feedbackBlock/HotTextInteraction.Type, feedbackBlock/DD.Type, feedbackBlock/Div.Type, feedbackBlock/LI.Type, feedbackBlock/TDH.Type, feedbackBlock/InfoControl.Type, feedbackBlock/SimpleAssociableChoice.Type, feedbackBlock/SimpleChoice.Type
Model | ( ( positionObjectStage{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | feedbackBlock{1..1} | templateBlock{1..1} | infoControl{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | hr{1..1} | blockquote{1..1} | table{1..1} | div{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:audio{1..1} | qh5:figure{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:video{1..1} ){1..1} ){1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} | templateInline{1..1} | feedbackInline{1..1} | printedVariable{1..1} ){0..*}, stylesheet{0..*}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
outcomeIdentifier | Identifier.Type | No | Global | Required | -
identifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Optional | show
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="FeedbackBlock.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="positionObjectStage" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="drawingInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="gapMatchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="matchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicGapMatchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hotspotInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicOrderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="selectPointInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicAssociateInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sliderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="choiceInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="mediaInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hottextInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="orderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="extendedTextInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="uploadInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="associateInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="infoControl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                    </xs:choice>
                    <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
                    <xs:element ref="apip:apipAccessibility" minOccurs="0" maxOccurs="1" />
                </xs:sequence>
                <xs:attributeGroup ref="outcomeIdentifier.FeedbackBlock.Attr" />
                <xs:attributeGroup ref="identifier.FeedbackBlock.Attr" />
                <xs:attributeGroup ref="showHide.FeedbackBlock.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.34 "FeedbackInline.Type" Core Complex Type Description

The XSD description for the "FeedbackInline.Type" Core ComplexType is given in Table 4.5.34.

Table 4.5.34 XSD description for the "FeedbackInline.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is feedback that is presented as inline content. Inline feedback that forms part of a Non-adaptive Item must not contain an interaction object, either directly or indirectly. When an interaction is contained in a hidden feedback it must also be hidden. The candidate must not be able to set or update the value of the associated response variables. Feedback can be embedded inside each other, with one exception: feedBackInline cannot contain feedbackBlock elements.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---FeedbackInline.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | feedbackInline/TemplateBlock.Type, feedbackInline/TemplateBlockFeedbackBlock.Type, feedbackInline/FeedbackBlock.Type, feedbackInline/DD.Type, feedbackInline/Div.Type, feedbackInline/LI.Type, feedbackInline/TDH.Type, feedbackInline/InfoControl.Type, feedbackInline/SimpleAssociableChoice.Type, feedbackInline/SimpleChoice.Type, feedbackInline/GapText.Type, feedbackInline/HotText.Type, feedbackInline/InlineChoice.Type, feedbackInline/Label.Type, feedbackInline/A.Type, feedbackInline/Caption.Type, feedbackInline/DT.Type, feedbackInline/HTMLText.Type, feedbackInline/Q.Type, feedbackInline/TemplateInline.Type
Model | ( ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | templateInline{1..1} | printedVariable{1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
outcomeIdentifier | Identifier.Type | No | Global | Required | -
identifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Optional | show
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="FeedbackInline.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="outcomeIdentifier.FeedbackInline.Attr" />
                <xs:attributeGroup ref="identifier.FeedbackInline.Attr" />
                <xs:attributeGroup ref="showHide.FeedbackInline.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.35 "FieldValue.Type" Core Complex Type Description

The XSD description for the "FieldValue.Type" Core ComplexType is given in Table 4.5.35.

Table 4.5.35 XSD description for the "FieldValue.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is a QTI expression. The field-value operator takes a sub-expression with a record container value. The result is the value of the field with the specified fieldIdentifier. If there is no field with that identifier then the result of the operator is NULL.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | fieldValue/AnyN.Type, fieldValue/BranchRule.Type, fieldValue/CustomOperator.Type, fieldValue/Equal.Type, fieldValue/EqualRounded.Type, fieldValue/FieldValue.Type, fieldValue/Index.Type, fieldValue/Inside.Type, fieldValue/Logic0toMany.Type, fieldValue/Logic1toMany.Type, fieldValue/LogicPair.Type, fieldValue/LogicSingle.Type, fieldValue/LookupOutcomeValue.Type, fieldValue/MathOperator.Type, fieldValue/OutcomeIf.Type, fieldValue/PatternMatch.Type, fieldValue/Repeat.Type, fieldValue/ResponseIf.Type, fieldValue/RoundTo.Type, fieldValue/SetValue.Type, fieldValue/StatsOperator.Type, fieldValue/StringMatch.Type, fieldValue/Substring.Type, fieldValue/TemplateConstraint.Type, fieldValue/TemplateDefault.Type, fieldValue/TemplateIf.Type, fieldValue/NumericLogic1toMany.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
fieldIdentifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:complexType name="FieldValue.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="1">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="fieldIdentifier.FieldValue.Attr" />
    </xs:complexType>

### 4.5.36 "Gap.Type" Core Complex Type Description

The XSD description for the "Gap.Type" Core ComplexType is given in Table 4.5.36.

Table 4.5.36 XSD description for the "Gap.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This defines the gap structure that must only appear within a 'gapMatchInteraction'.
Diagram |
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---Gap.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | gap/A.Type, gap/Caption.Type, gap/DT.Type, gap/HTMLText.Type, gap/Q.Type, gap/TemplateInline.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | show
matchGroup | List of IdentifierList.Type | No | Global | Optional | -
required | xs:boolean | No | Global | Optional | false
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="Gap.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBaseEmpty.Type">
                <xs:attributeGroup ref="identifier.Gap.Attr" />
                <xs:attributeGroup ref="templateIdentifier.Gap.Attr" />
                <xs:attributeGroup ref="showHide.Gap.Attr" />
                <xs:attributeGroup ref="matchGroup.Gap.Attr" />
                <xs:attributeGroup ref="required.Gap.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.37 "GapImg.Type" Core Complex Type Description

The XSD description for the "GapImg.Type" Core ComplexType is given in Table 4.5.37.

Table 4.5.37 XSD description for the "GapImg.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A gap image contains a single image object to be inserted into a gap by the candidate.
Diagram |
Type Hierarchy | BaseSequence.Type ^---GapImg.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | gapImg/GapMatchInteraction.Type, gapImg/GraphicGapMatchInteraction.Type
Model | object{1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | show
matchGroup | List of IdentifierList.Type | No | Global | Optional | -
matchMax | xs:nonNegativeInteger | No | Global | Required | -
matchMin | xs:nonNegativeInteger | No | Global | Optional | 0
objectLabel | xs:string | No | Global | Optional | -
top | xs:normalizedString | No | Global | Optional | -
left | xs:normalizedString | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="GapImg.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequence.Type">
                <xs:sequence>
                    <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                </xs:sequence>
                <xs:attributeGroup ref="identifier.GapImg.Attr" />
                <xs:attributeGroup ref="templateIdentifier.GapImg.Attr" />
                <xs:attributeGroup ref="showHide.GapImg.Attr" />
                <xs:attributeGroup ref="matchGroup.GapImg.Attr" />
                <xs:attributeGroup ref="matchMax.GapImg.Attr" />
                <xs:attributeGroup ref="matchMin.GapImg.Attr" />
                <xs:attributeGroup ref="objectLabel.GapImg.Attr" />
                <xs:attributeGroup ref="top.GapImg.Attr" />
                <xs:attributeGroup ref="left.GapImg.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.38 "GapMatchInteraction.Type" Core Complex Type Description

The XSD description for the "GapMatchInteraction.Type" Core ComplexType is given in Table 4.5.38.

Table 4.5.38 XSD description for the "GapMatchInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A gap match interaction is a blockInteraction that contains a number gaps that the candidate can fill from an associated set of choices. The candidate must be able to review the content with the gaps filled in context, as indicated by their choices. The gapMatchInteraction must be bound to a response variable with base-type directedPair and either single or multiple cardinality, depending on the number of gaps. The choices represent the source of the pairing and gaps the targets. Each gap can have at most one choice associated with it. The maximum occurrence of the choices is controlled by the matchMax characteristic of gapChoice.
Diagram |
Type Hierarchy | BasePromptInteraction.Type ^---GapMatchInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | gapMatchInteraction/BlockQuote.Type, gapMatchInteraction/FeedbackBlock.Type, gapMatchInteraction/ItemBody.Type, gapMatchInteraction/StimulusBody.Type, gapMatchInteraction/DD.Type, gapMatchInteraction/Div.Type, gapMatchInteraction/LI.Type, gapMatchInteraction/TDH.Type
Model | prompt{0..1}, ( gapText{1..1} | gapImg{1..1} ){1..*}, ( feedbackBlock{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | hr{1..1} | blockquote{1..1} | table{1..1} | div{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:audio{1..1} | qh5:figure{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:video{1..1} ){1..1} ){1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
shuffle | xs:boolean | No | Global | Optional | false
minAssociations | xs:nonNegativeInteger | No | Global | Optional | -
maxAssociations | xs:nonNegativeInteger | No | Global | Optional | 1
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="GapMatchInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BasePromptInteraction.Type">
                <xs:sequence>
                    <xs:choice minOccurs="1" maxOccurs="unbounded">
                        <xs:element ref="gapText" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="gapImg" minOccurs="1" maxOccurs="1" />
                    </xs:choice>
                    <xs:choice minOccurs="1" maxOccurs="unbounded">
                        <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="shuffle.GapMatchInteraction.Attr" />
                <xs:attributeGroup ref="minAssociations.GapMatchInteraction.Attr" />
                <xs:attributeGroup ref="maxAssociations.GapMatchInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.39 "GapText.Type" Core Complex Type Description

The XSD description for the "GapText.Type" Core ComplexType is given in Table 4.5.39.

Table 4.5.39 XSD description for the "GapText.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A simple run of text to be inserted into a gap by the user, may be subject to variable value substitution with printedVariable.
Diagram |
Type Hierarchy | BaseSequence.Type ^---GapText.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | gapText/GapMatchInteraction.Type, gapText/GraphicGapMatchInteraction.Type
Model | ( printedVariable{1..1} | feedbackInline{1..1} | templateInline{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | show
matchGroup | List of IdentifierList.Type | No | Global | Optional | -
matchMax | xs:nonNegativeInteger | No | Global | Required | -
matchMin | xs:nonNegativeInteger | No | Global | Optional | 0
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="GapText.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequence.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="identifier.GapText.Attr" />
                <xs:attributeGroup ref="templateIdentifier.GapText.Attr" />
                <xs:attributeGroup ref="showHide.GapText.Attr" />
                <xs:attributeGroup ref="matchGroup.GapText.Attr" />
                <xs:attributeGroup ref="matchMax.GapText.Attr" />
                <xs:attributeGroup ref="matchMin.GapText.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.40 "GraphicAssociateInteraction.Type" Core Complex Type Description

The XSD description for the "GraphicAssociateInteraction.Type" Core ComplexType is given in Table 4.5.40.

Table 4.5.40 XSD description for the "GraphicAssociateInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A graphic associate interaction is a graphic interaction with a corresponding set of choices that are defined as areas of the graphic image. The candidate's task is to associate the areas (hotspots) with each other. The graphic associate interaction should only be used when the graphical relationship of the choices with respect to each other (as represented by the graphic image) is important to the needs of the item. Otherwise, associateInteraction should be used instead with separate Material for each option. The delivery engine must clearly indicate all defined area(s) of the image. The graphicAssociateInteraction must be bound to a response variable with base-type pair and either single or multiple cardinality.
Diagram |
Type Hierarchy | BasePromptInteraction.Type ^---GraphicAssociateInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | graphicAssociateInteraction/BlockQuote.Type, graphicAssociateInteraction/FeedbackBlock.Type, graphicAssociateInteraction/ItemBody.Type, graphicAssociateInteraction/StimulusBody.Type, graphicAssociateInteraction/DD.Type, graphicAssociateInteraction/Div.Type, graphicAssociateInteraction/LI.Type, graphicAssociateInteraction/TDH.Type
Model | prompt{0..1}, object{1..1}, associableHotspot{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
minAssociations | xs:nonNegativeInteger | No | Global | Optional | -
maxAssociations | xs:nonNegativeInteger | No | Global | Optional | 1
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="GraphicAssociateInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BasePromptInteraction.Type">
                <xs:sequence>
                    <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="associableHotspot" minOccurs="1" maxOccurs="unbounded" />
                </xs:sequence>
                <xs:attributeGroup ref="minAssociations.GraphicAssociateInteraction.Attr" />
                <xs:attributeGroup ref="maxAssociations.GraphicAssociateInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.41 "GraphicGapMatchInteraction.Type" Core Complex Type Description

The XSD description for the "GraphicGapMatchInteraction.Type" Core ComplexType is given in Table 4.5.41.

Table 4.5.41 XSD description for the "GraphicGapMatchInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A graphic gap-match interaction is a graphical interaction with a set of gaps that are defined as areas (hotspots) of the graphic image and an additional set of gap choices that are defined outside the image. The candidate must associate the gap choices with the gaps in the image and be able to review the image with the gaps filled in context, as indicated by their choices. Care should be taken when designing these interactions to ensure that the gaps in the image are a suitable size to receive the required gap choices. It must be clear to the candidate which hotspot each choice has been associated with. When associated, choices must appear wholly inside the gaps if at all possible and, where overlaps are required, should not hide each other completely. If the candidate indicates the association by positioning the choice over the gap (e.g. drag and drop) the system should 'snap' it to the nearest position that satisfies these requirements. The graphicGapMatchInteraction must be bound to a response variable with base-type directedPair and multiple cardinality. The choices represent the source of the pairing and the gaps in the image (the hotspots) the targets. Unlike the simple gapMatchInteraction, each gap can have several choices associated with it if desired, furthermore, the same choice may be associated with an associableHotspot multiple times, in which case the corresponding directed pair appears multiple times in the value of the response variable.
Diagram |
Type Hierarchy | BaseSequenceFull.Type ^---GraphicGapMatchInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | graphicGapMatchInteraction/BlockQuote.Type, graphicGapMatchInteraction/FeedbackBlock.Type, graphicGapMatchInteraction/ItemBody.Type, graphicGapMatchInteraction/StimulusBody.Type, graphicGapMatchInteraction/DD.Type, graphicGapMatchInteraction/Div.Type, graphicGapMatchInteraction/LI.Type, graphicGapMatchInteraction/TDH.Type
Model | prompt{0..1}, object{1..1}, ( gapText{1..1} | gapImg{1..1} ){1..*}, associableHotspot{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
minAssociations | xs:nonNegativeInteger | No | Global | Optional | -
maxAssociations | xs:nonNegativeInteger | No | Global | Optional | 1
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="GraphicGapMatchInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceFull.Type">
                <xs:sequence>
                    <xs:element ref="prompt" minOccurs="0" maxOccurs="1" />
                    <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                    <xs:choice minOccurs="1" maxOccurs="unbounded">
                        <xs:element ref="gapText" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="gapImg" minOccurs="1" maxOccurs="1" />
                    </xs:choice>
                    <xs:element ref="associableHotspot" minOccurs="1" maxOccurs="unbounded" />
                </xs:sequence>
                <xs:attributeGroup ref="minAssociations.GraphicGapMatchInteraction.Attr" />
                <xs:attributeGroup ref="maxAssociations.GraphicGapMatchInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.42 "GraphicOrderInteraction.Type" Core Complex Type Description

The XSD description for the "GraphicOrderInteraction.Type" Core ComplexType is given in Table 4.5.42.

Table 4.5.42 XSD description for the "GraphicOrderInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A graphic order interaction is a graphic interaction with a corresponding set of choices that are defined as areas of the graphic image. The candidate's task is to impose an ordering on the areas (hotspots). The order hotspot interaction should only be used when the spacial relationship of the choices with respect to each other (as represented by the graphic image) is important to the needs of the item. Otherwise, orderInteraction should be used instead with separate material for each option. The delivery engine must clearly indicate all defined area(s) of the image. The order hotspot interaction must be bound to a response variable with a baseType of identifier and ordered cardinality.
Diagram |
Type Hierarchy | BaseSequenceFull.Type ^---GraphicOrderInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | graphicOrderInteraction/BlockQuote.Type, graphicOrderInteraction/FeedbackBlock.Type, graphicOrderInteraction/ItemBody.Type, graphicOrderInteraction/StimulusBody.Type, graphicOrderInteraction/DD.Type, graphicOrderInteraction/Div.Type, graphicOrderInteraction/LI.Type, graphicOrderInteraction/TDH.Type
Model | prompt{0..1}, object{1..1}, hotspotChoice{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
minChoices | xs:nonNegativeInteger | No | Global | Optional | -
maxChoices | xs:nonNegativeInteger | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="GraphicOrderInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceFull.Type">
                <xs:sequence>
                    <xs:element ref="prompt" minOccurs="0" maxOccurs="1" />
                    <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="hotspotChoice" minOccurs="1" maxOccurs="unbounded" />
                </xs:sequence>
                <xs:attributeGroup ref="minChoices.GraphicOrderInteraction.Attr" />
                <xs:attributeGroup ref="maxChoices.GraphicOrderInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.43 "HR.Type" Core Complex Type Description

The XSD description for the "HR.Type" Core ComplexType is given in Table 4.5.43.

Table 4.5.43 XSD description for the "HR.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This provides the functionality of the HTML 'hr' tag. The 'hr' tag represents a paragraph-level thematic break, e.g. a scene change in a story, or a transition to another topic within a section of a reference book. This tag has no children.
Diagram |
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---HR.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | hr/BlockQuote.Type, hr/FeedbackBlock.Type, hr/ItemBody.Type, hr/StimulusBody.Type, hr/GapMatchInteraction.Type, hr/HotTextInteraction.Type, hr/TemplateBlock.Type, hr/TemplateBlockFeedbackBlock.Type, hr/ModalFeedback.Type, hr/TestFeedback.Type, hr/DD.Type, hr/Div.Type, hr/LI.Type, hr/TDH.Type, hr/InfoControl.Type, hr/SimpleAssociableChoice.Type, hr/SimpleChoice.Type, hr/Object.Type, hr/Prompt.Type, hr/RubricBlock.Type, hr/RubricBlockTemplateBlock.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="HR.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBaseEmpty.Type" />
        </xs:complexContent>
    </xs:complexType>

### 4.5.44 "HTMLText.Type" Core Complex Type Description

The XSD description for the "HTMLText.Type" Core ComplexType is given in Table 4.5.44.

Table 4.5.44 XSD description for the "HTMLText.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This provides the content for text-based HTML tags e.g. 'pre', 'p', 'h1', 'h2', etc.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---HTMLText.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | abbr/TemplateBlock.Type, abbr/TemplateBlockFeedbackBlock.Type, abbr/ModalFeedback.Type, abbr/TestFeedback.Type, abbr/DD.Type, abbr/Div.Type, abbr/LI.Type, abbr/TDH.Type, abbr/InfoControl.Type, abbr/SimpleAssociableChoice.Type, abbr/SimpleChoice.Type, abbr/Object.Type, abbr/Prompt.Type, abbr/RubricBlock.Type, abbr/RubricBlockTemplateBlock.Type, abbr/BDO.Type, abbr/FeedbackBlock.Type, abbr/FeedbackInline.Type, abbr/GapText.Type, abbr/HotText.Type, abbr/InlineChoice.Type, abbr/Label.Type, abbr/A.Type, abbr/Caption.Type, abbr/DT.Type, abbr/HTMLText.Type, abbr/Q.Type, abbr/TemplateInline.Type, abbr/RubricBlockTemplateInline.Type, acronym/TemplateBlock.Type, acronym/TemplateBlockFeedbackBlock.Type, acronym/ModalFeedback.Type, acronym/TestFeedback.Type, acronym/DD.Type, acronym/Div.Type, acronym/LI.Type, acronym/TDH.Type, acronym/InfoControl.Type, acronym/SimpleAssociableChoice.Type, acronym/SimpleChoice.Type, acronym/Object.Type, acronym/Prompt.Type, acronym/RubricBlock.Type, acronym/RubricBlockTemplateBlock.Type, acronym/BDO.Type, acronym/FeedbackBlock.Type, acronym/FeedbackInline.Type, acronym/GapText.Type, acronym/HotText.Type, acronym/InlineChoice.Type, acronym/Label.Type, acronym/A.Type, acronym/Caption.Type, acronym/DT.Type, acronym/HTMLText.Type, acronym/Q.Type, acronym/TemplateInline.Type, acronym/RubricBlockTemplateInline.Type, address/BlockQuote.Type, address/FeedbackBlock.Type, address/ItemBody.Type, address/StimulusBody.Type, address/GapMatchInteraction.Type, address/HotTextInteraction.Type, address/TemplateBlock.Type, address/TemplateBlockFeedbackBlock.Type, address/ModalFeedback.Type, address/TestFeedback.Type, address/DD.Type, address/Div.Type, address/LI.Type, address/TDH.Type, address/InfoControl.Type, address/SimpleAssociableChoice.Type, address/SimpleChoice.Type, address/Object.Type, address/Prompt.Type, address/RubricBlock.Type, address/RubricBlockTemplateBlock.Type, b/TemplateBlock.Type, b/TemplateBlockFeedbackBlock.Type, b/ModalFeedback.Type, b/TestFeedback.Type, b/DD.Type, b/Div.Type, b/LI.Type, b/TDH.Type, b/InfoControl.Type, b/SimpleAssociableChoice.Type, b/SimpleChoice.Type, b/Object.Type, b/Prompt.Type, b/RubricBlock.Type, b/RubricBlockTemplateBlock.Type, b/BDO.Type, b/FeedbackBlock.Type, b/FeedbackInline.Type, b/GapText.Type, b/HotText.Type, b/InlineChoice.Type, b/Label.Type, b/A.Type, b/Caption.Type, b/DT.Type, b/HTMLText.Type, b/Q.Type, b/TemplateInline.Type, b/RubricBlockTemplateInline.Type, big/TemplateBlock.Type, big/TemplateBlockFeedbackBlock.Type, big/ModalFeedback.Type, big/TestFeedback.Type, big/DD.Type, big/Div.Type, big/LI.Type, big/TDH.Type, big/InfoControl.Type, big/SimpleAssociableChoice.Type, big/SimpleChoice.Type, big/Object.Type, big/Prompt.Type, big/RubricBlock.Type, big/RubricBlockTemplateBlock.Type, big/BDO.Type, big/FeedbackBlock.Type, big/FeedbackInline.Type, big/GapText.Type, big/HotText.Type, big/InlineChoice.Type, big/Label.Type, big/A.Type, big/Caption.Type, big/DT.Type, big/HTMLText.Type, big/Q.Type, big/TemplateInline.Type, big/RubricBlockTemplateInline.Type, cite/TemplateBlock.Type, cite/TemplateBlockFeedbackBlock.Type, cite/ModalFeedback.Type, cite/TestFeedback.Type, cite/DD.Type, cite/Div.Type, cite/LI.Type, cite/TDH.Type, cite/InfoControl.Type, cite/SimpleAssociableChoice.Type, cite/SimpleChoice.Type, cite/Object.Type, cite/Prompt.Type, cite/RubricBlock.Type, cite/RubricBlockTemplateBlock.Type, cite/BDO.Type, cite/FeedbackBlock.Type, cite/FeedbackInline.Type, cite/GapText.Type, cite/HotText.Type, cite/InlineChoice.Type, cite/Label.Type, cite/A.Type, cite/Caption.Type, cite/DT.Type, cite/HTMLText.Type, cite/Q.Type, cite/TemplateInline.Type, cite/RubricBlockTemplateInline.Type, code/TemplateBlock.Type, code/TemplateBlockFeedbackBlock.Type, code/ModalFeedback.Type, code/TestFeedback.Type, code/DD.Type, code/Div.Type, code/LI.Type, code/TDH.Type, code/InfoControl.Type, code/SimpleAssociableChoice.Type, code/SimpleChoice.Type, code/Object.Type, code/Prompt.Type, code/RubricBlock.Type, code/RubricBlockTemplateBlock.Type, code/BDO.Type, code/FeedbackBlock.Type, code/FeedbackInline.Type, code/GapText.Type, code/HotText.Type, code/InlineChoice.Type, code/Label.Type, code/A.Type, code/Caption.Type, code/DT.Type, code/HTMLText.Type, code/Q.Type, code/TemplateInline.Type, code/RubricBlockTemplateInline.Type, dfn/TemplateBlock.Type, dfn/TemplateBlockFeedbackBlock.Type, dfn/ModalFeedback.Type, dfn/TestFeedback.Type, dfn/DD.Type, dfn/Div.Type, dfn/LI.Type, dfn/TDH.Type, dfn/InfoControl.Type, dfn/SimpleAssociableChoice.Type, dfn/SimpleChoice.Type, dfn/Object.Type, dfn/Prompt.Type, dfn/RubricBlock.Type, dfn/RubricBlockTemplateBlock.Type, dfn/BDO.Type, dfn/FeedbackBlock.Type, dfn/FeedbackInline.Type, dfn/GapText.Type, dfn/HotText.Type, dfn/InlineChoice.Type, dfn/Label.Type, dfn/A.Type, dfn/Caption.Type, dfn/DT.Type, dfn/HTMLText.Type, dfn/Q.Type, dfn/TemplateInline.Type, dfn/RubricBlockTemplateInline.Type, em/TemplateBlock.Type, em/TemplateBlockFeedbackBlock.Type, em/ModalFeedback.Type, em/TestFeedback.Type, em/DD.Type, em/Div.Type, em/LI.Type, em/TDH.Type, em/InfoControl.Type, em/SimpleAssociableChoice.Type, em/SimpleChoice.Type, em/Object.Type, em/Prompt.Type, em/RubricBlock.Type, em/RubricBlockTemplateBlock.Type, em/BDO.Type, em/FeedbackBlock.Type, em/FeedbackInline.Type, em/GapText.Type, em/HotText.Type, em/InlineChoice.Type, em/Label.Type, em/A.Type, em/Caption.Type, em/DT.Type, em/HTMLText.Type, em/Q.Type, em/TemplateInline.Type, em/RubricBlockTemplateInline.Type, h1/BlockQuote.Type, h1/FeedbackBlock.Type, h1/ItemBody.Type, h1/StimulusBody.Type, h1/GapMatchInteraction.Type, h1/HotTextInteraction.Type, h1/TemplateBlock.Type, h1/TemplateBlockFeedbackBlock.Type, h1/ModalFeedback.Type, h1/TestFeedback.Type, h1/DD.Type, h1/Div.Type, h1/LI.Type, h1/TDH.Type, h1/InfoControl.Type, h1/SimpleAssociableChoice.Type, h1/SimpleChoice.Type, h1/Object.Type, h1/Prompt.Type, h1/RubricBlock.Type, h1/RubricBlockTemplateBlock.Type, h2/BlockQuote.Type, h2/FeedbackBlock.Type, h2/ItemBody.Type, h2/StimulusBody.Type, h2/GapMatchInteraction.Type, h2/HotTextInteraction.Type, h2/TemplateBlock.Type, h2/TemplateBlockFeedbackBlock.Type, h2/ModalFeedback.Type, h2/TestFeedback.Type, h2/DD.Type, h2/Div.Type, h2/LI.Type, h2/TDH.Type, h2/InfoControl.Type, h2/SimpleAssociableChoice.Type, h2/SimpleChoice.Type, h2/Object.Type, h2/Prompt.Type, h2/RubricBlock.Type, h2/RubricBlockTemplateBlock.Type, h3/BlockQuote.Type, h3/FeedbackBlock.Type, h3/ItemBody.Type, h3/StimulusBody.Type, h3/GapMatchInteraction.Type, h3/HotTextInteraction.Type, h3/TemplateBlock.Type, h3/TemplateBlockFeedbackBlock.Type, h3/ModalFeedback.Type, h3/TestFeedback.Type, h3/DD.Type, h3/Div.Type, h3/LI.Type, h3/TDH.Type, h3/InfoControl.Type, h3/SimpleAssociableChoice.Type, h3/SimpleChoice.Type, h3/Object.Type, h3/Prompt.Type, h3/RubricBlock.Type, h3/RubricBlockTemplateBlock.Type, h4/BlockQuote.Type, h4/FeedbackBlock.Type, h4/ItemBody.Type, h4/StimulusBody.Type, h4/GapMatchInteraction.Type, h4/HotTextInteraction.Type, h4/TemplateBlock.Type, h4/TemplateBlockFeedbackBlock.Type, h4/ModalFeedback.Type, h4/TestFeedback.Type, h4/DD.Type, h4/Div.Type, h4/LI.Type, h4/TDH.Type, h4/InfoControl.Type, h4/SimpleAssociableChoice.Type, h4/SimpleChoice.Type, h4/Object.Type, h4/Prompt.Type, h4/RubricBlock.Type, h4/RubricBlockTemplateBlock.Type, h5/BlockQuote.Type, h5/FeedbackBlock.Type, h5/ItemBody.Type, h5/StimulusBody.Type, h5/GapMatchInteraction.Type, h5/HotTextInteraction.Type, h5/TemplateBlock.Type, h5/TemplateBlockFeedbackBlock.Type, h5/ModalFeedback.Type, h5/TestFeedback.Type, h5/DD.Type, h5/Div.Type, h5/LI.Type, h5/TDH.Type, h5/InfoControl.Type, h5/SimpleAssociableChoice.Type, h5/SimpleChoice.Type, h5/Object.Type, h5/Prompt.Type, h5/RubricBlock.Type, h5/RubricBlockTemplateBlock.Type, h6/BlockQuote.Type, h6/FeedbackBlock.Type, h6/ItemBody.Type, h6/StimulusBody.Type, h6/GapMatchInteraction.Type, h6/HotTextInteraction.Type, h6/TemplateBlock.Type, h6/TemplateBlockFeedbackBlock.Type, h6/ModalFeedback.Type, h6/TestFeedback.Type, h6/DD.Type, h6/Div.Type, h6/LI.Type, h6/TDH.Type, h6/InfoControl.Type, h6/SimpleAssociableChoice.Type, h6/SimpleChoice.Type, h6/Object.Type, h6/Prompt.Type, h6/RubricBlock.Type, h6/RubricBlockTemplateBlock.Type, i/TemplateBlock.Type, i/TemplateBlockFeedbackBlock.Type, i/ModalFeedback.Type, i/TestFeedback.Type, i/DD.Type, i/Div.Type, i/LI.Type, i/TDH.Type, i/InfoControl.Type, i/SimpleAssociableChoice.Type, i/SimpleChoice.Type, i/Object.Type, i/Prompt.Type, i/RubricBlock.Type, i/RubricBlockTemplateBlock.Type, i/BDO.Type, i/FeedbackBlock.Type, i/FeedbackInline.Type, i/GapText.Type, i/HotText.Type, i/InlineChoice.Type, i/Label.Type, i/A.Type, i/Caption.Type, i/DT.Type, i/HTMLText.Type, i/Q.Type, i/TemplateInline.Type, i/RubricBlockTemplateInline.Type, kbd/TemplateBlock.Type, kbd/TemplateBlockFeedbackBlock.Type, kbd/ModalFeedback.Type, kbd/TestFeedback.Type, kbd/DD.Type, kbd/Div.Type, kbd/LI.Type, kbd/TDH.Type, kbd/InfoControl.Type, kbd/SimpleAssociableChoice.Type, kbd/SimpleChoice.Type, kbd/Object.Type, kbd/Prompt.Type, kbd/RubricBlock.Type, kbd/RubricBlockTemplateBlock.Type, kbd/BDO.Type, kbd/FeedbackBlock.Type, kbd/FeedbackInline.Type, kbd/GapText.Type, kbd/HotText.Type, kbd/InlineChoice.Type, kbd/Label.Type, kbd/A.Type, kbd/Caption.Type, kbd/DT.Type, kbd/HTMLText.Type, kbd/Q.Type, kbd/TemplateInline.Type, kbd/RubricBlockTemplateInline.Type, p/BlockQuote.Type, p/FeedbackBlock.Type, p/ItemBody.Type, p/StimulusBody.Type, p/GapMatchInteraction.Type, p/HotTextInteraction.Type, p/TemplateBlock.Type, p/TemplateBlockFeedbackBlock.Type, p/ModalFeedback.Type, p/TestFeedback.Type, p/DD.Type, p/Div.Type, p/LI.Type, p/TDH.Type, p/InfoControl.Type, p/SimpleAssociableChoice.Type, p/SimpleChoice.Type, p/Object.Type, p/Prompt.Type, p/RubricBlock.Type, p/RubricBlockTemplateBlock.Type, pre/BlockQuote.Type, pre/FeedbackBlock.Type, pre/ItemBody.Type, pre/StimulusBody.Type, pre/GapMatchInteraction.Type, pre/HotTextInteraction.Type, pre/TemplateBlock.Type, pre/TemplateBlockFeedbackBlock.Type, pre/ModalFeedback.Type, pre/TestFeedback.Type, pre/DD.Type, pre/Div.Type, pre/LI.Type, pre/TDH.Type, pre/InfoControl.Type, pre/SimpleAssociableChoice.Type, pre/SimpleChoice.Type, pre/Object.Type, pre/Prompt.Type, pre/RubricBlock.Type, pre/RubricBlockTemplateBlock.Type, samp/TemplateBlock.Type, samp/TemplateBlockFeedbackBlock.Type, samp/ModalFeedback.Type, samp/TestFeedback.Type, samp/DD.Type, samp/Div.Type, samp/LI.Type, samp/TDH.Type, samp/InfoControl.Type, samp/SimpleAssociableChoice.Type, samp/SimpleChoice.Type, samp/Object.Type, samp/Prompt.Type, samp/RubricBlock.Type, samp/RubricBlockTemplateBlock.Type, samp/BDO.Type, samp/FeedbackBlock.Type, samp/FeedbackInline.Type, samp/GapText.Type, samp/HotText.Type, samp/InlineChoice.Type, samp/Label.Type, samp/A.Type, samp/Caption.Type, samp/DT.Type, samp/HTMLText.Type, samp/Q.Type, samp/TemplateInline.Type, samp/RubricBlockTemplateInline.Type, small/TemplateBlock.Type, small/TemplateBlockFeedbackBlock.Type, small/ModalFeedback.Type, small/TestFeedback.Type, small/DD.Type, small/Div.Type, small/LI.Type, small/TDH.Type, small/InfoControl.Type, small/SimpleAssociableChoice.Type, small/SimpleChoice.Type, small/Object.Type, small/Prompt.Type, small/RubricBlock.Type, small/RubricBlockTemplateBlock.Type, small/BDO.Type, small/FeedbackBlock.Type, small/FeedbackInline.Type, small/GapText.Type, small/HotText.Type, small/InlineChoice.Type, small/Label.Type, small/A.Type, small/Caption.Type, small/DT.Type, small/HTMLText.Type, small/Q.Type, small/TemplateInline.Type, small/RubricBlockTemplateInline.Type, span/TemplateBlock.Type, span/TemplateBlockFeedbackBlock.Type, span/ModalFeedback.Type, span/TestFeedback.Type, span/DD.Type, span/Div.Type, span/LI.Type, span/TDH.Type, span/InfoControl.Type, span/SimpleAssociableChoice.Type, span/SimpleChoice.Type, span/Object.Type, span/Prompt.Type, span/RubricBlock.Type, span/RubricBlockTemplateBlock.Type, span/BDO.Type, span/FeedbackBlock.Type, span/FeedbackInline.Type, span/GapText.Type, span/HotText.Type, span/InlineChoice.Type, span/Label.Type, span/A.Type, span/Caption.Type, span/DT.Type, span/HTMLText.Type, span/Q.Type, span/TemplateInline.Type, span/RubricBlockTemplateInline.Type, strong/TemplateBlock.Type, strong/TemplateBlockFeedbackBlock.Type, strong/ModalFeedback.Type, strong/TestFeedback.Type, strong/DD.Type, strong/Div.Type, strong/LI.Type, strong/TDH.Type, strong/InfoControl.Type, strong/SimpleAssociableChoice.Type, strong/SimpleChoice.Type, strong/Object.Type, strong/Prompt.Type, strong/RubricBlock.Type, strong/RubricBlockTemplateBlock.Type, strong/BDO.Type, strong/FeedbackBlock.Type, strong/FeedbackInline.Type, strong/GapText.Type, strong/HotText.Type, strong/InlineChoice.Type, strong/Label.Type, strong/A.Type, strong/Caption.Type, strong/DT.Type, strong/HTMLText.Type, strong/Q.Type, strong/TemplateInline.Type, strong/RubricBlockTemplateInline.Type, sub/TemplateBlock.Type, sub/TemplateBlockFeedbackBlock.Type, sub/ModalFeedback.Type, sub/TestFeedback.Type, sub/DD.Type, sub/Div.Type, sub/LI.Type, sub/TDH.Type, sub/InfoControl.Type, sub/SimpleAssociableChoice.Type, sub/SimpleChoice.Type, sub/Object.Type, sub/Prompt.Type, sub/RubricBlock.Type, sub/RubricBlockTemplateBlock.Type, sub/BDO.Type, sub/FeedbackBlock.Type, sub/FeedbackInline.Type, sub/GapText.Type, sub/HotText.Type, sub/InlineChoice.Type, sub/Label.Type, sub/A.Type, sub/Caption.Type, sub/DT.Type, sub/HTMLText.Type, sub/Q.Type, sub/TemplateInline.Type, sub/RubricBlockTemplateInline.Type, sup/TemplateBlock.Type, sup/TemplateBlockFeedbackBlock.Type, sup/ModalFeedback.Type, sup/TestFeedback.Type, sup/DD.Type, sup/Div.Type, sup/LI.Type, sup/TDH.Type, sup/InfoControl.Type, sup/SimpleAssociableChoice.Type, sup/SimpleChoice.Type, sup/Object.Type, sup/Prompt.Type, sup/RubricBlock.Type, sup/RubricBlockTemplateBlock.Type, sup/BDO.Type, sup/FeedbackBlock.Type, sup/FeedbackInline.Type, sup/GapText.Type, sup/HotText.Type, sup/InlineChoice.Type, sup/Label.Type, sup/A.Type, sup/Caption.Type, sup/DT.Type, sup/HTMLText.Type, sup/Q.Type, sup/TemplateInline.Type, sup/RubricBlockTemplateInline.Type, tt/TemplateBlock.Type, tt/TemplateBlockFeedbackBlock.Type, tt/ModalFeedback.Type, tt/TestFeedback.Type, tt/DD.Type, tt/Div.Type, tt/LI.Type, tt/TDH.Type, tt/InfoControl.Type, tt/SimpleAssociableChoice.Type, tt/SimpleChoice.Type, tt/Object.Type, tt/Prompt.Type, tt/RubricBlock.Type, tt/RubricBlockTemplateBlock.Type, tt/BDO.Type, tt/FeedbackBlock.Type, tt/FeedbackInline.Type, tt/GapText.Type, tt/HotText.Type, tt/InlineChoice.Type, tt/Label.Type, tt/A.Type, tt/Caption.Type, tt/DT.Type, tt/HTMLText.Type, tt/Q.Type, tt/TemplateInline.Type, tt/RubricBlockTemplateInline.Type, var/TemplateBlock.Type, var/TemplateBlockFeedbackBlock.Type, var/ModalFeedback.Type, var/TestFeedback.Type, var/DD.Type, var/Div.Type, var/LI.Type, var/TDH.Type, var/InfoControl.Type, var/SimpleAssociableChoice.Type, var/SimpleChoice.Type, var/Object.Type, var/Prompt.Type, var/RubricBlock.Type, var/RubricBlockTemplateBlock.Type, var/BDO.Type, var/FeedbackBlock.Type, var/FeedbackInline.Type, var/GapText.Type, var/HotText.Type, var/InlineChoice.Type, var/Label.Type, var/A.Type, var/Caption.Type, var/DT.Type, var/HTMLText.Type, var/Q.Type, var/TemplateInline.Type, var/RubricBlockTemplateInline.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="HTMLText.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="gap" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.45 "HotText.Type" Core Complex Type Description

The XSD description for the "HotText.Type" Core ComplexType is given in Table 4.5.45.

Table 4.5.45 XSD description for the "HotText.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A HotText area is used within the content of an hotTextInteraction to provide the individual choices. It must not contain any nested interactions or other hottext areas. When a hottext choice is hidden (by the value of an associated template variable) the content of the choice must still be presented to the candidate as if it were simply part of the surrounding material. In the case of hottext, the effect of hiding the choice is simply to make the run of text unselectable by the candidate.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---HotText.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | hottext/ModalFeedback.Type, hottext/TestFeedback.Type, hottext/DD.Type, hottext/Div.Type, hottext/LI.Type, hottext/TDH.Type, hottext/A.Type, hottext/Caption.Type, hottext/DT.Type, hottext/HTMLText.Type, hottext/Q.Type, hottext/TemplateInline.Type
Model | ( printedVariable{1..1} | feedbackInline{1..1} | templateInline{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | show
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="HotText.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="identifier.HotText.Attr" />
                <xs:attributeGroup ref="templateIdentifier.HotText.Attr" />
                <xs:attributeGroup ref="showHide.HotText.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.46 "HotTextInteraction.Type" Core Complex Type Description

The XSD description for the "HotTextInteraction.Type" Core ComplexType is given in Table 4.5.46.

Table 4.5.46 XSD description for the "HotTextInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The HotText Interaction presents a set of choices to the candidate represented as selectable runs of text embedded within a surrounding context, such as a simple passage of text. Like choiceInteraction, the candidate's task is to select one or more of the choices, up to a maximum of maxChoices. The interaction is initialized from the defaultValue of the associated response variable, a NULL value indicating that no choices are selected (the usual case). The hottextInteraction must be bound to a response variable with a baseType of identifier and single or multiple cardinality.
Diagram |
Type Hierarchy | BasePromptInteraction.Type ^---HotTextInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | hottextInteraction/BlockQuote.Type, hottextInteraction/FeedbackBlock.Type, hottextInteraction/ItemBody.Type, hottextInteraction/StimulusBody.Type, hottextInteraction/DD.Type, hottextInteraction/Div.Type, hottextInteraction/LI.Type, hottextInteraction/TDH.Type
Model | prompt{0..1}, ( feedbackBlock{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | hr{1..1} | blockquote{1..1} | table{1..1} | div{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:audio{1..1} | qh5:figure{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:video{1..1} ){1..1} ){1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
maxChoices | xs:nonNegativeInteger | No | Global | Optional | 1
minChoices | xs:nonNegativeInteger | No | Global | Optional | 0
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="HotTextInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BasePromptInteraction.Type">
                <xs:sequence>
                    <xs:choice minOccurs="1" maxOccurs="unbounded">
                        <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="maxChoices.HotTextInteraction.Attr" />
                <xs:attributeGroup ref="minChoices.HotTextInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.47 "HotspotChoice.Type" Core Complex Type Description

The XSD description for the "HotspotChoice.Type" Core ComplexType is given in Table 4.5.47.

Table 4.5.47 XSD description for the "HotspotChoice.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The definition of a hotspot choices that can be selected by the candidate. If the delivery system does not support pointer-based selection then the order in which the choices are given must be the order in which they are offered to the candidate for selection. For example, the 'tab order' in simple keyboard navigation. If hotspots overlap then those listed first hide overlapping hotspots that appear later. The default hotspot, if defined, must appear last.
Diagram |
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---HotspotChoice.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | hotspotChoice/GraphicOrderInteraction.Type, hotspotChoice/HotspotInteraction.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | show
shape | [ Enumeration ] | No | Global | Required | -
coords | Coords.Type | No | Global | Required | -
hotspotLabel | xs:string | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="HotspotChoice.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBaseEmpty.Type">
                <xs:attributeGroup ref="identifier.HotspotChoice.Attr" />
                <xs:attributeGroup ref="templateIdentifier.HotspotChoice.Attr" />
                <xs:attributeGroup ref="showHide.HotspotChoice.Attr" />
                <xs:attributeGroup ref="shape.HotspotChoice.Attr" />
                <xs:attributeGroup ref="coords.HotspotChoice.Attr" />
                <xs:attributeGroup ref="hotspotLabel.HotspotChoice.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.48 "HotspotInteraction.Type" Core Complex Type Description

The XSD description for the "HotspotInteraction.Type" Core ComplexType is given in Table 4.5.48.

Table 4.5.48 XSD description for the "HotspotInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A hotspot interaction is a graphical interaction with a corresponding set of choices that are defined as areas of the graphic image. The candidate's task is to select one or more of the areas (hotspots). The hotspot interaction should only be used when the spacial relationship of the choices with respect to each other (as represented by the graphic image) is important to the needs of the item. Otherwise, choiceInteraction should be used instead with separate material for each option. The delivery engine must clearly indicate the selected area(s) of the image and may also indicate the unselected areas as well. Interactions with hidden hotspots are achieved with the selectPointInteraction. The hotspot interaction must be bound to a response variable with a baseType of identifier and single or multiple cardinality.
Diagram |
Type Hierarchy | BasePromptInteraction.Type ^---HotspotInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | hotspotInteraction/BlockQuote.Type, hotspotInteraction/FeedbackBlock.Type, hotspotInteraction/ItemBody.Type, hotspotInteraction/StimulusBody.Type, hotspotInteraction/DD.Type, hotspotInteraction/Div.Type, hotspotInteraction/LI.Type, hotspotInteraction/TDH.Type
Model | prompt{0..1}, object{1..1}, hotspotChoice{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
minChoices | xs:nonNegativeInteger | No | Global | Optional | 0
maxChoices | xs:nonNegativeInteger | No | Global | Optional | 1
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="HotspotInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BasePromptInteraction.Type">
                <xs:sequence>
                    <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="hotspotChoice" minOccurs="1" maxOccurs="unbounded" />
                </xs:sequence>
                <xs:attributeGroup ref="minChoices.HotspotInteraction.Attr" />
                <xs:attributeGroup ref="maxChoices.HotspotInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.49 "Img.Type" Core Complex Type Description

The XSD description for the "Img.Type" Core ComplexType is given in Table 4.5.49.

Table 4.5.49 XSD description for the "Img.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This provides the HTML 'img' tag content capability.
Diagram |
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---Img.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | img/TemplateBlock.Type, img/TemplateBlockFeedbackBlock.Type, img/ModalFeedback.Type, img/TestFeedback.Type, img/DD.Type, img/Div.Type, img/LI.Type, img/TDH.Type, img/InfoControl.Type, img/SimpleAssociableChoice.Type, img/SimpleChoice.Type, img/Object.Type, img/Prompt.Type, img/RubricBlock.Type, img/RubricBlockTemplateBlock.Type, img/BDO.Type, img/FeedbackBlock.Type, img/FeedbackInline.Type, img/GapText.Type, img/HotText.Type, img/InlineChoice.Type, img/Label.Type, img/A.Type, img/Caption.Type, img/DT.Type, img/HTMLText.Type, img/Q.Type, img/TemplateInline.Type, img/RubricBlockTemplateInline.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
src | xs:anyURI | No | Global | Required | -
alt | xs:string | No | Global | Required | -
longdesc | xs:anyURI | No | Global | Optional | -
height | Length.Type | No | Global | Optional | -
width | Length.Type | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="Img.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBaseEmpty.Type">
                <xs:attributeGroup ref="src.Img.Attr" />
                <xs:attributeGroup ref="alt.Img.Attr" />
                <xs:attributeGroup ref="longdesc.Img.Attr" />
                <xs:attributeGroup ref="height.Img.Attr" />
                <xs:attributeGroup ref="width.Img.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.50 "Index.Type" Core Complex Type Description

The XSD description for the "Index.Type" Core ComplexType is given in Table 4.5.50.

Table 4.5.50 XSD description for the "Index.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The index operator takes a sub-expression with an ordered container value and any base-type. The result is the nth value of the container. The result has the same base-type as the sub-expression but single cardinality. The first value of a container has index 1, the second 2 and so on. 'n' must be a positive integer. If 'n' exceeds the number of values in the container (or the sub-expression is NULL) then the result of the index operator is NULL. If 'n' is an identifier, it is the value of 'n' at runtime that is used.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | index/AnyN.Type, index/BranchRule.Type, index/CustomOperator.Type, index/Equal.Type, index/EqualRounded.Type, index/FieldValue.Type, index/Index.Type, index/Inside.Type, index/Logic0toMany.Type, index/Logic1toMany.Type, index/LogicPair.Type, index/LogicSingle.Type, index/LookupOutcomeValue.Type, index/MathOperator.Type, index/OutcomeIf.Type, index/PatternMatch.Type, index/Repeat.Type, index/ResponseIf.Type, index/RoundTo.Type, index/SetValue.Type, index/StatsOperator.Type, index/StringMatch.Type, index/Substring.Type, index/TemplateConstraint.Type, index/TemplateDefault.Type, index/TemplateIf.Type, index/NumericLogic1toMany.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
n | Union [ IntOrIdentifier ] | No | Global | Required | -
Source |
    <xs:complexType name="Index.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="1">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="n.Index.Attr" />
    </xs:complexType>

### 4.5.51 "InfoControl.Type" Core Complex Type Description

The XSD description for the "InfoControl.Type" Core ComplexType is given in Table 4.5.51.

Table 4.5.51 XSD description for the "InfoControl.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The infoControl element is a means to provide the candidate with extra information about the item when s/he chooses to trigger the control. The extra information can be a hint, but could also be additional tools such as a ruler or a (JavaScript) calculator. Unlike endAttemptInteraction, triggering infoControl has no consequence for response processing. That means that its triggering won't be recorded, nor the candidate penalised for triggering it.
Diagram |
Type Hierarchy | BaseSequence.Type ^---InfoControl.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | infoControl/BlockQuote.Type, infoControl/FeedbackBlock.Type, infoControl/ItemBody.Type, infoControl/StimulusBody.Type
Model | ( printedVariable{1..1} | feedbackBlock{1..1} | feedbackInline{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
title | xs:normalizedString | No | Global | Required | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="InfoControl.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequence.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="title.InfoControl.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.52 "InlineChoice.Type" Core Complex Type Description

The XSD description for the "InlineChoice.Type" Core ComplexType is given in Table 4.5.52.

Table 4.5.52 XSD description for the "InlineChoice.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A simple run of text to be displayed to the user, may be subject to variable value substitution with printedVariable.
Diagram |
Type Hierarchy | BaseSequence.Type ^---InlineChoice.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | inlineChoice/InlineChoiceInteraction.Type
Model | ( printedVariable{1..1} | feedbackInline{1..1} | templateInline{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
fixed | xs:boolean | No | Global | Optional | false
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | show
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="InlineChoice.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequence.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="identifier.InlineChoice.Attr" />
                <xs:attributeGroup ref="fixed.InlineChoice.Attr" />
                <xs:attributeGroup ref="templateIdentifier.InlineChoice.Attr" />
                <xs:attributeGroup ref="showHide.InlineChoice.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.53 "InlineChoiceInteraction.Type" Core Complex Type Description

The XSD description for the "InlineChoiceInteraction.Type" Core ComplexType is given in Table 4.5.53.

Table 4.5.53 XSD description for the "InlineChoiceInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | An inline choice is an inlineInteraction that presents the user with a set of choices, each of which is a simple piece of text. The candidate's task is to select one of the choices. Unlike the choiceInteraction, the delivery engine must allow the candidate to review their choice within the context of the surrounding text. The inlineChoiceInteraction must be bound to a response variable with a baseType of identifier and single cardinality only.
Diagram |
Type Hierarchy | BaseSequenceFull.Type ^---InlineChoiceInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | inlineChoiceInteraction/DD.Type, inlineChoiceInteraction/Div.Type, inlineChoiceInteraction/LI.Type, inlineChoiceInteraction/TDH.Type, inlineChoiceInteraction/A.Type, inlineChoiceInteraction/Caption.Type, inlineChoiceInteraction/DT.Type, inlineChoiceInteraction/HTMLText.Type, inlineChoiceInteraction/Q.Type
Model | label{0..1}, inlineChoice{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
shuffle | xs:boolean | No | Global | Optional | false
required | xs:boolean | No | Global | Optional | false
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="InlineChoiceInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceFull.Type">
                <xs:sequence>
                    <xs:element ref="label" minOccurs="0" maxOccurs="1" />
                    <xs:element ref="inlineChoice" minOccurs="1" maxOccurs="unbounded" />
                </xs:sequence>
                <xs:attributeGroup ref="shuffle.InlineChoiceInteraction.Attr" />
                <xs:attributeGroup ref="required.InlineChoiceInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.54 "Inside.Type" Core Complex Type Description

The XSD description for the "Inside.Type" Core ComplexType is given in Table 4.5.54.

Table 4.5.54 XSD description for the "Inside.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The inside operator takes a single sub-expression which must have a baseType of point. The result is a single boolean with a value of 'true' if the given point is inside the area defined by shape and coords. If the sub-expression is a container the result is 'true' if any of the points are inside the area. If either sub-expression is NULL then the operator results in NULL.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | inside/AnyN.Type, inside/BranchRule.Type, inside/CustomOperator.Type, inside/Equal.Type, inside/EqualRounded.Type, inside/FieldValue.Type, inside/Index.Type, inside/Inside.Type, inside/Logic0toMany.Type, inside/Logic1toMany.Type, inside/LogicPair.Type, inside/LogicSingle.Type, inside/LookupOutcomeValue.Type, inside/MathOperator.Type, inside/OutcomeIf.Type, inside/PatternMatch.Type, inside/Repeat.Type, inside/ResponseIf.Type, inside/RoundTo.Type, inside/SetValue.Type, inside/StatsOperator.Type, inside/StringMatch.Type, inside/Substring.Type, inside/TemplateConstraint.Type, inside/TemplateDefault.Type, inside/TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
shape | [ Enumeration ] | No | Global | Required | -
coords | Coords.Type | No | Global | Required | -
Source |
    <xs:complexType name="Inside.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="1">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="shape.Inside.Attr" />
        <xs:attributeGroup ref="coords.Inside.Attr" />
    </xs:complexType>

### 4.5.55 "InterpolationTable.Type" Core Complex Type Description

The XSD description for the "InterpolationTable.Type" Core ComplexType is given in Table 4.5.55.

Table 4.5.55 XSD description for the "InterpolationTable.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | An interpolationTable transforms a source float (or integer) by finding the first interpolationTableEntry with a sourceValue that is less than or equal to (subject to includeBoundary) the source value. For example, an interpolation table can be used to map a raw numeric score onto an identifier representing a grade. It may also be used to implement numeric transformations such as those from a simple raw score to a value on a calibrated scale.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | interpolationTable/OutcomeDeclaration.Type
Model | interpolationTableEntry{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
defaultValue | xs:string | No | Global | Optional | -
Source |
    <xs:complexType name="InterpolationTable.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="interpolationTableEntry" minOccurs="1" maxOccurs="unbounded" />
        </xs:sequence>
        <xs:attributeGroup ref="defaultValue.InterpolationTable.Attr" />
    </xs:complexType>

### 4.5.56 "ItemBody.Type" Core Complex Type Description

The XSD description for the "ItemBody.Type" Core ComplexType is given in Table 4.5.56.

Table 4.5.56 XSD description for the "ItemBody.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The item body contains the text, graphics, media objects and interactions that describe the item's content and information about how it is structured. The body is presented by combining it with stylesheet information, either explicitly or implicitly using the default style rules of the delivery or authoring system. The body must be presented to the candidate when the associated item session is in the interacting state. In this state, the candidate must be able to interact with each of the visible interactions and therefore set or update the values of the associated response variables. The body may be presented to the candidate when the item session is in the closed or review state. In these states, although the candidate's responses should be visible, the interactions must be disabled so as to prevent the candidate from setting or updating the values of the associated response variables. Finally, the body may be presented to the candidate in the solution state, in which case the correct values of the response variables must be visible and the associated interactions disabled. The content model employed by this specification uses many concepts taken directly from [XHTML, 10]. In effect, this part of the specification defines a profile of XHTML. Only some of the elements defined in XHTML are allowable in an assessmentItem and of those that are, some have additional constraints placed on their attributes. Only those elements from XHTML that are explicitly defined within this specification can be used. See XHTML Elements for details. Finally, this specification defines some new elements which are used to represent the interactions and to control the display of Integrated Feedback and content restricted to one or more of the defined content views.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | itemBody/AssessmentItem.Type
Model | ( rubricBlock{1..1} | ( positionObjectStage{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | feedbackBlock{1..1} | templateBlock{1..1} | infoControl{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | hr{1..1} | blockquote{1..1} | table{1..1} | div{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:audio{1..1} | qh5:figure{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:video{1..1} ){1..1} ){1..1} ){1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | No | Global | Optional | -
class | List of StringList.Type | No | Global | Optional | -
xml:lang | [ Import ] | No | Global | Optional | -
label | xs:normalizedString | No | Global | Optional | -
dir | [ Enumeration ] | No | Global | Optional | auto
Source |
    <xs:complexType name="ItemBody.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="unbounded">
                <xs:element ref="rubricBlock" minOccurs="1" maxOccurs="1" />
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="positionObjectStage" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="drawingInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gapMatchInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="matchInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="graphicGapMatchInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="hotspotInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="graphicOrderInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="selectPointInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="graphicAssociateInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sliderInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="choiceInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mediaInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="hottextInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="orderInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="extendedTextInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="uploadInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="associateInteraction" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="infoControl" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                    <xs:choice minOccurs="1" maxOccurs="1">
                        <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                    </xs:choice>
                </xs:choice>
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="id.ItemBody.Attr" />
        <xs:attributeGroup ref="class.ItemBody.Attr" />
        <xs:attributeGroup ref="language.ItemBody.Attr" />
        <xs:attributeGroup ref="label.ItemBody.Attr" />
        <xs:attributeGroup ref="dir.ItemBody.Attr" />
    </xs:complexType>

### 4.5.57 "LI.Type" Core Complex Type Description

The XSD description for the "LI.Type" Core ComplexType is given in Table 4.5.57.

Table 4.5.57 XSD description for the "LI.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Provides the HTML 'li' tag functionality. The 'li' tag represents a list item. If its parent tag is an 'ol' or 'ul', then the tag is an item of the parent tag's list, as defined for those elements. Otherwise, the list item has no defined list-related relationship to any other 'li' tag. If the parent element is an 'ol' tag, then the 'li' tag has an ordinal value.
Diagram |
Type Hierarchy | BaseSequence.Type ^---LI.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | li/OUL.Type
Model | ( printedVariable{1..1} | feedbackBlock{1..1} | hottext{1..1} | feedbackInline{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | textEntryInteraction{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="LI.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequence.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="drawingInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="gapMatchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="matchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicGapMatchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hotspotInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicOrderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="selectPointInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicAssociateInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="sliderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="choiceInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="mediaInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hottextInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="orderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="extendedTextInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="uploadInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="associateInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.58 "Label.Type" Core Complex Type Description

The XSD description for the "Label.Type" Core ComplexType is given in Table 4.5.58.

Table 4.5.58 XSD description for the "Label.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This allows the creation of human readable labels that will be placed close to the associated displayed content artefacts. These labels are used with inline choice interactions.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---Label.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | label/InlineChoiceInteraction.Type
Model | ( printedVariable{1..1} | feedbackInline{1..1} | templateInline{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="Label.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.59 "Logic0toMany.Type" Core Complex Type Description

The XSD description for the "Logic0toMany.Type" Core ComplexType is given in Table 4.5.59.

Table 4.5.59 XSD description for the "Logic0toMany.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is the container for the combination of the zero or more child expressions (see the ExpressionGroup abstract class for the details on the permitted expressions).
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | multiple/AnyN.Type, multiple/BranchRule.Type, multiple/CustomOperator.Type, multiple/Equal.Type, multiple/EqualRounded.Type, multiple/FieldValue.Type, multiple/Index.Type, multiple/Inside.Type, multiple/Logic0toMany.Type, multiple/Logic1toMany.Type, multiple/LogicPair.Type, multiple/LogicSingle.Type, multiple/LookupOutcomeValue.Type, multiple/MathOperator.Type, multiple/OutcomeIf.Type, multiple/PatternMatch.Type, multiple/Repeat.Type, multiple/ResponseIf.Type, multiple/RoundTo.Type, multiple/SetValue.Type, multiple/StatsOperator.Type, multiple/StringMatch.Type, multiple/Substring.Type, multiple/TemplateConstraint.Type, multiple/TemplateDefault.Type, multiple/TemplateIf.Type, multiple/NumericLogic1toMany.Type, ordered/AnyN.Type, ordered/BranchRule.Type, ordered/CustomOperator.Type, ordered/Equal.Type, ordered/EqualRounded.Type, ordered/FieldValue.Type, ordered/Index.Type, ordered/Inside.Type, ordered/Logic0toMany.Type, ordered/Logic1toMany.Type, ordered/LogicPair.Type, ordered/LogicSingle.Type, ordered/LookupOutcomeValue.Type, ordered/MathOperator.Type, ordered/OutcomeIf.Type, ordered/PatternMatch.Type, ordered/Repeat.Type, ordered/ResponseIf.Type, ordered/RoundTo.Type, ordered/SetValue.Type, ordered/StatsOperator.Type, ordered/StringMatch.Type, ordered/Substring.Type, ordered/TemplateConstraint.Type, ordered/TemplateDefault.Type, ordered/TemplateIf.Type, ordered/NumericLogic1toMany.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){0..*}
Attributes | None.
Source |
    <xs:complexType name="Logic0toMany.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

### 4.5.60 "Logic1toMany.Type" Core Complex Type Description

The XSD description for the "Logic1toMany.Type" Core ComplexType is given in Table 4.5.60.

Table 4.5.60 XSD description for the "Logic1toMany.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is the container for the combination of the one or more child expressions (see the ExpressionGroup abstract class for the details on the permitted expressions).
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | and/AnyN.Type, and/BranchRule.Type, and/CustomOperator.Type, and/Equal.Type, and/EqualRounded.Type, and/FieldValue.Type, and/Index.Type, and/Inside.Type, and/Logic0toMany.Type, and/Logic1toMany.Type, and/LogicPair.Type, and/LogicSingle.Type, and/LookupOutcomeValue.Type, and/MathOperator.Type, and/OutcomeIf.Type, and/PatternMatch.Type, and/Repeat.Type, and/ResponseIf.Type, and/RoundTo.Type, and/SetValue.Type, and/StatsOperator.Type, and/StringMatch.Type, and/Substring.Type, and/TemplateConstraint.Type, and/TemplateDefault.Type, and/TemplateIf.Type, gcd/AnyN.Type, gcd/BranchRule.Type, gcd/CustomOperator.Type, gcd/Equal.Type, gcd/EqualRounded.Type, gcd/FieldValue.Type, gcd/Index.Type, gcd/Inside.Type, gcd/Logic0toMany.Type, gcd/Logic1toMany.Type, gcd/LogicPair.Type, gcd/LogicSingle.Type, gcd/LookupOutcomeValue.Type, gcd/MathOperator.Type, gcd/OutcomeIf.Type, gcd/PatternMatch.Type, gcd/Repeat.Type, gcd/ResponseIf.Type, gcd/RoundTo.Type, gcd/SetValue.Type, gcd/StatsOperator.Type, gcd/StringMatch.Type, gcd/Substring.Type, gcd/TemplateConstraint.Type, gcd/TemplateDefault.Type, gcd/TemplateIf.Type, gcd/NumericLogic1toMany.Type, lcm/AnyN.Type, lcm/BranchRule.Type, lcm/CustomOperator.Type, lcm/Equal.Type, lcm/EqualRounded.Type, lcm/FieldValue.Type, lcm/Index.Type, lcm/Inside.Type, lcm/Logic0toMany.Type, lcm/Logic1toMany.Type, lcm/LogicPair.Type, lcm/LogicSingle.Type, lcm/LookupOutcomeValue.Type, lcm/MathOperator.Type, lcm/OutcomeIf.Type, lcm/PatternMatch.Type, lcm/Repeat.Type, lcm/ResponseIf.Type, lcm/RoundTo.Type, lcm/SetValue.Type, lcm/StatsOperator.Type, lcm/StringMatch.Type, lcm/Substring.Type, lcm/TemplateConstraint.Type, lcm/TemplateDefault.Type, lcm/TemplateIf.Type, lcm/NumericLogic1toMany.Type, max/AnyN.Type, max/BranchRule.Type, max/CustomOperator.Type, max/Equal.Type, max/EqualRounded.Type, max/FieldValue.Type, max/Index.Type, max/Inside.Type, max/Logic0toMany.Type, max/Logic1toMany.Type, max/LogicPair.Type, max/LogicSingle.Type, max/LookupOutcomeValue.Type, max/MathOperator.Type, max/OutcomeIf.Type, max/PatternMatch.Type, max/Repeat.Type, max/ResponseIf.Type, max/RoundTo.Type, max/SetValue.Type, max/StatsOperator.Type, max/StringMatch.Type, max/Substring.Type, max/TemplateConstraint.Type, max/TemplateDefault.Type, max/TemplateIf.Type, max/NumericLogic1toMany.Type, min/AnyN.Type, min/BranchRule.Type, min/CustomOperator.Type, min/Equal.Type, min/EqualRounded.Type, min/FieldValue.Type, min/Index.Type, min/Inside.Type, min/Logic0toMany.Type, min/Logic1toMany.Type, min/LogicPair.Type, min/LogicSingle.Type, min/LookupOutcomeValue.Type, min/MathOperator.Type, min/OutcomeIf.Type, min/PatternMatch.Type, min/Repeat.Type, min/ResponseIf.Type, min/RoundTo.Type, min/SetValue.Type, min/StatsOperator.Type, min/StringMatch.Type, min/Substring.Type, min/TemplateConstraint.Type, min/TemplateDefault.Type, min/TemplateIf.Type, min/NumericLogic1toMany.Type, or/AnyN.Type, or/BranchRule.Type, or/CustomOperator.Type, or/Equal.Type, or/EqualRounded.Type, or/FieldValue.Type, or/Index.Type, or/Inside.Type, or/Logic0toMany.Type, or/Logic1toMany.Type, or/LogicPair.Type, or/LogicSingle.Type, or/LookupOutcomeValue.Type, or/MathOperator.Type, or/OutcomeIf.Type, or/PatternMatch.Type, or/Repeat.Type, or/ResponseIf.Type, or/RoundTo.Type, or/SetValue.Type, or/StatsOperator.Type, or/StringMatch.Type, or/Substring.Type, or/TemplateConstraint.Type, or/TemplateDefault.Type, or/TemplateIf.Type, product/AnyN.Type, product/BranchRule.Type, product/CustomOperator.Type, product/Equal.Type, product/EqualRounded.Type, product/FieldValue.Type, product/Index.Type, product/Inside.Type, product/Logic0toMany.Type, product/Logic1toMany.Type, product/LogicPair.Type, product/LogicSingle.Type, product/LookupOutcomeValue.Type, product/MathOperator.Type, product/OutcomeIf.Type, product/PatternMatch.Type, product/Repeat.Type, product/ResponseIf.Type, product/RoundTo.Type, product/SetValue.Type, product/StatsOperator.Type, product/StringMatch.Type, product/Substring.Type, product/TemplateConstraint.Type, product/TemplateDefault.Type, product/TemplateIf.Type, product/NumericLogic1toMany.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..*}
Attributes | None.
Source |
    <xs:complexType name="Logic1toMany.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="unbounded">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

### 4.5.61 "LogicPair.Type" Core Complex Type Description

The XSD description for the "LogicPair.Type" Core ComplexType is given in Table 4.5.61.

Table 4.5.61 XSD description for the "LogicPair.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is the container for the combination of the two child expressions (see the ExpressionGroup abstract class for the details on the permitted expressions).
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | contains/AnyN.Type, contains/BranchRule.Type, contains/CustomOperator.Type, contains/Equal.Type, contains/EqualRounded.Type, contains/FieldValue.Type, contains/Index.Type, contains/Inside.Type, contains/Logic0toMany.Type, contains/Logic1toMany.Type, contains/LogicPair.Type, contains/LogicSingle.Type, contains/LookupOutcomeValue.Type, contains/MathOperator.Type, contains/OutcomeIf.Type, contains/PatternMatch.Type, contains/Repeat.Type, contains/ResponseIf.Type, contains/RoundTo.Type, contains/SetValue.Type, contains/StatsOperator.Type, contains/StringMatch.Type, contains/Substring.Type, contains/TemplateConstraint.Type, contains/TemplateDefault.Type, contains/TemplateIf.Type, delete/AnyN.Type, delete/BranchRule.Type, delete/CustomOperator.Type, delete/Equal.Type, delete/EqualRounded.Type, delete/FieldValue.Type, delete/Index.Type, delete/Inside.Type, delete/Logic0toMany.Type, delete/Logic1toMany.Type, delete/LogicPair.Type, delete/LogicSingle.Type, delete/LookupOutcomeValue.Type, delete/MathOperator.Type, delete/OutcomeIf.Type, delete/PatternMatch.Type, delete/Repeat.Type, delete/ResponseIf.Type, delete/RoundTo.Type, delete/SetValue.Type, delete/StatsOperator.Type, delete/StringMatch.Type, delete/Substring.Type, delete/TemplateConstraint.Type, delete/TemplateDefault.Type, delete/TemplateIf.Type, delete/NumericLogic1toMany.Type, divide/AnyN.Type, divide/BranchRule.Type, divide/CustomOperator.Type, divide/Equal.Type, divide/EqualRounded.Type, divide/FieldValue.Type, divide/Index.Type, divide/Inside.Type, divide/Logic0toMany.Type, divide/Logic1toMany.Type, divide/LogicPair.Type, divide/LogicSingle.Type, divide/LookupOutcomeValue.Type, divide/MathOperator.Type, divide/OutcomeIf.Type, divide/PatternMatch.Type, divide/Repeat.Type, divide/ResponseIf.Type, divide/RoundTo.Type, divide/SetValue.Type, divide/StatsOperator.Type, divide/StringMatch.Type, divide/Substring.Type, divide/TemplateConstraint.Type, divide/TemplateDefault.Type, divide/TemplateIf.Type, divide/NumericLogic1toMany.Type, durationGTE/AnyN.Type, durationGTE/BranchRule.Type, durationGTE/CustomOperator.Type, durationGTE/Equal.Type, durationGTE/EqualRounded.Type, durationGTE/FieldValue.Type, durationGTE/Index.Type, durationGTE/Inside.Type, durationGTE/Logic0toMany.Type, durationGTE/Logic1toMany.Type, durationGTE/LogicPair.Type, durationGTE/LogicSingle.Type, durationGTE/LookupOutcomeValue.Type, durationGTE/MathOperator.Type, durationGTE/OutcomeIf.Type, durationGTE/PatternMatch.Type, durationGTE/Repeat.Type, durationGTE/ResponseIf.Type, durationGTE/RoundTo.Type, durationGTE/SetValue.Type, durationGTE/StatsOperator.Type, durationGTE/StringMatch.Type, durationGTE/Substring.Type, durationGTE/TemplateConstraint.Type, durationGTE/TemplateDefault.Type, durationGTE/TemplateIf.Type, durationLT/AnyN.Type, durationLT/BranchRule.Type, durationLT/CustomOperator.Type, durationLT/Equal.Type, durationLT/EqualRounded.Type, durationLT/FieldValue.Type, durationLT/Index.Type, durationLT/Inside.Type, durationLT/Logic0toMany.Type, durationLT/Logic1toMany.Type, durationLT/LogicPair.Type, durationLT/LogicSingle.Type, durationLT/LookupOutcomeValue.Type, durationLT/MathOperator.Type, durationLT/OutcomeIf.Type, durationLT/PatternMatch.Type, durationLT/Repeat.Type, durationLT/ResponseIf.Type, durationLT/RoundTo.Type, durationLT/SetValue.Type, durationLT/StatsOperator.Type, durationLT/StringMatch.Type, durationLT/Substring.Type, durationLT/TemplateConstraint.Type, durationLT/TemplateDefault.Type, durationLT/TemplateIf.Type, gt/AnyN.Type, gt/BranchRule.Type, gt/CustomOperator.Type, gt/Equal.Type, gt/EqualRounded.Type, gt/FieldValue.Type, gt/Index.Type, gt/Inside.Type, gt/Logic0toMany.Type, gt/Logic1toMany.Type, gt/LogicPair.Type, gt/LogicSingle.Type, gt/LookupOutcomeValue.Type, gt/MathOperator.Type, gt/OutcomeIf.Type, gt/PatternMatch.Type, gt/Repeat.Type, gt/ResponseIf.Type, gt/RoundTo.Type, gt/SetValue.Type, gt/StatsOperator.Type, gt/StringMatch.Type, gt/Substring.Type, gt/TemplateConstraint.Type, gt/TemplateDefault.Type, gt/TemplateIf.Type, gte/AnyN.Type, gte/BranchRule.Type, gte/CustomOperator.Type, gte/Equal.Type, gte/EqualRounded.Type, gte/FieldValue.Type, gte/Index.Type, gte/Inside.Type, gte/Logic0toMany.Type, gte/Logic1toMany.Type, gte/LogicPair.Type, gte/LogicSingle.Type, gte/LookupOutcomeValue.Type, gte/MathOperator.Type, gte/OutcomeIf.Type, gte/PatternMatch.Type, gte/Repeat.Type, gte/ResponseIf.Type, gte/RoundTo.Type, gte/SetValue.Type, gte/StatsOperator.Type, gte/StringMatch.Type, gte/Substring.Type, gte/TemplateConstraint.Type, gte/TemplateDefault.Type, gte/TemplateIf.Type, integerDivide/AnyN.Type, integerDivide/BranchRule.Type, integerDivide/CustomOperator.Type, integerDivide/Equal.Type, integerDivide/EqualRounded.Type, integerDivide/FieldValue.Type, integerDivide/Index.Type, integerDivide/Inside.Type, integerDivide/Logic0toMany.Type, integerDivide/Logic1toMany.Type, integerDivide/LogicPair.Type, integerDivide/LogicSingle.Type, integerDivide/LookupOutcomeValue.Type, integerDivide/MathOperator.Type, integerDivide/OutcomeIf.Type, integerDivide/PatternMatch.Type, integerDivide/Repeat.Type, integerDivide/ResponseIf.Type, integerDivide/RoundTo.Type, integerDivide/SetValue.Type, integerDivide/StatsOperator.Type, integerDivide/StringMatch.Type, integerDivide/Substring.Type, integerDivide/TemplateConstraint.Type, integerDivide/TemplateDefault.Type, integerDivide/TemplateIf.Type, integerDivide/NumericLogic1toMany.Type, integerModulus/AnyN.Type, integerModulus/BranchRule.Type, integerModulus/CustomOperator.Type, integerModulus/Equal.Type, integerModulus/EqualRounded.Type, integerModulus/FieldValue.Type, integerModulus/Index.Type, integerModulus/Inside.Type, integerModulus/Logic0toMany.Type, integerModulus/Logic1toMany.Type, integerModulus/LogicPair.Type, integerModulus/LogicSingle.Type, integerModulus/LookupOutcomeValue.Type, integerModulus/MathOperator.Type, integerModulus/OutcomeIf.Type, integerModulus/PatternMatch.Type, integerModulus/Repeat.Type, integerModulus/ResponseIf.Type, integerModulus/RoundTo.Type, integerModulus/SetValue.Type, integerModulus/StatsOperator.Type, integerModulus/StringMatch.Type, integerModulus/Substring.Type, integerModulus/TemplateConstraint.Type, integerModulus/TemplateDefault.Type, integerModulus/TemplateIf.Type, integerModulus/NumericLogic1toMany.Type, lt/AnyN.Type, lt/BranchRule.Type, lt/CustomOperator.Type, lt/Equal.Type, lt/EqualRounded.Type, lt/FieldValue.Type, lt/Index.Type, lt/Inside.Type, lt/Logic0toMany.Type, lt/Logic1toMany.Type, lt/LogicPair.Type, lt/LogicSingle.Type, lt/LookupOutcomeValue.Type, lt/MathOperator.Type, lt/OutcomeIf.Type, lt/PatternMatch.Type, lt/Repeat.Type, lt/ResponseIf.Type, lt/RoundTo.Type, lt/SetValue.Type, lt/StatsOperator.Type, lt/StringMatch.Type, lt/Substring.Type, lt/TemplateConstraint.Type, lt/TemplateDefault.Type, lt/TemplateIf.Type, lte/AnyN.Type, lte/BranchRule.Type, lte/CustomOperator.Type, lte/Equal.Type, lte/EqualRounded.Type, lte/FieldValue.Type, lte/Index.Type, lte/Inside.Type, lte/Logic0toMany.Type, lte/Logic1toMany.Type, lte/LogicPair.Type, lte/LogicSingle.Type, lte/LookupOutcomeValue.Type, lte/MathOperator.Type, lte/OutcomeIf.Type, lte/PatternMatch.Type, lte/Repeat.Type, lte/ResponseIf.Type, lte/RoundTo.Type, lte/SetValue.Type, lte/StatsOperator.Type, lte/StringMatch.Type, lte/Substring.Type, lte/TemplateConstraint.Type, lte/TemplateDefault.Type, lte/TemplateIf.Type, match/AnyN.Type, match/BranchRule.Type, match/CustomOperator.Type, match/Equal.Type, match/EqualRounded.Type, match/FieldValue.Type, match/Index.Type, match/Inside.Type, match/Logic0toMany.Type, match/Logic1toMany.Type, match/LogicPair.Type, match/LogicSingle.Type, match/LookupOutcomeValue.Type, match/MathOperator.Type, match/OutcomeIf.Type, match/PatternMatch.Type, match/Repeat.Type, match/ResponseIf.Type, match/RoundTo.Type, match/SetValue.Type, match/StatsOperator.Type, match/StringMatch.Type, match/Substring.Type, match/TemplateConstraint.Type, match/TemplateDefault.Type, match/TemplateIf.Type, member/AnyN.Type, member/BranchRule.Type, member/CustomOperator.Type, member/Equal.Type, member/EqualRounded.Type, member/FieldValue.Type, member/Index.Type, member/Inside.Type, member/Logic0toMany.Type, member/Logic1toMany.Type, member/LogicPair.Type, member/LogicSingle.Type, member/LookupOutcomeValue.Type, member/MathOperator.Type, member/OutcomeIf.Type, member/PatternMatch.Type, member/Repeat.Type, member/ResponseIf.Type, member/RoundTo.Type, member/SetValue.Type, member/StatsOperator.Type, member/StringMatch.Type, member/Substring.Type, member/TemplateConstraint.Type, member/TemplateDefault.Type, member/TemplateIf.Type, power/AnyN.Type, power/BranchRule.Type, power/CustomOperator.Type, power/Equal.Type, power/EqualRounded.Type, power/FieldValue.Type, power/Index.Type, power/Inside.Type, power/Logic0toMany.Type, power/Logic1toMany.Type, power/LogicPair.Type, power/LogicSingle.Type, power/LookupOutcomeValue.Type, power/MathOperator.Type, power/OutcomeIf.Type, power/PatternMatch.Type, power/Repeat.Type, power/ResponseIf.Type, power/RoundTo.Type, power/SetValue.Type, power/StatsOperator.Type, power/StringMatch.Type, power/Substring.Type, power/TemplateConstraint.Type, power/TemplateDefault.Type, power/TemplateIf.Type, power/NumericLogic1toMany.Type, subtract/AnyN.Type, subtract/BranchRule.Type, subtract/CustomOperator.Type, subtract/Equal.Type, subtract/EqualRounded.Type, subtract/FieldValue.Type, subtract/Index.Type, subtract/Inside.Type, subtract/Logic0toMany.Type, subtract/Logic1toMany.Type, subtract/LogicPair.Type, subtract/LogicSingle.Type, subtract/LookupOutcomeValue.Type, subtract/MathOperator.Type, subtract/OutcomeIf.Type, subtract/PatternMatch.Type, subtract/Repeat.Type, subtract/ResponseIf.Type, subtract/RoundTo.Type, subtract/SetValue.Type, subtract/StatsOperator.Type, subtract/StringMatch.Type, subtract/Substring.Type, subtract/TemplateConstraint.Type, subtract/TemplateDefault.Type, subtract/TemplateIf.Type, subtract/NumericLogic1toMany.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes | None.
Source |
    <xs:complexType name="LogicPair.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="2" maxOccurs="2">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

### 4.5.62 "LogicSingle.Type" Core Complex Type Description

The XSD description for the "LogicSingle.Type" Core ComplexType is given in Table 4.5.62.

Table 4.5.62 XSD description for the "LogicSingle.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is the container for the combination of the single child expression (see the ExpressionGroup abstract class for the details on the permitted expressions).
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | containerSize/AnyN.Type, containerSize/BranchRule.Type, containerSize/CustomOperator.Type, containerSize/Equal.Type, containerSize/EqualRounded.Type, containerSize/FieldValue.Type, containerSize/Index.Type, containerSize/Inside.Type, containerSize/Logic0toMany.Type, containerSize/Logic1toMany.Type, containerSize/LogicPair.Type, containerSize/LogicSingle.Type, containerSize/LookupOutcomeValue.Type, containerSize/MathOperator.Type, containerSize/OutcomeIf.Type, containerSize/PatternMatch.Type, containerSize/Repeat.Type, containerSize/ResponseIf.Type, containerSize/RoundTo.Type, containerSize/SetValue.Type, containerSize/StatsOperator.Type, containerSize/StringMatch.Type, containerSize/Substring.Type, containerSize/TemplateConstraint.Type, containerSize/TemplateDefault.Type, containerSize/TemplateIf.Type, containerSize/NumericLogic1toMany.Type, integerToFloat/AnyN.Type, integerToFloat/BranchRule.Type, integerToFloat/CustomOperator.Type, integerToFloat/Equal.Type, integerToFloat/EqualRounded.Type, integerToFloat/FieldValue.Type, integerToFloat/Index.Type, integerToFloat/Inside.Type, integerToFloat/Logic0toMany.Type, integerToFloat/Logic1toMany.Type, integerToFloat/LogicPair.Type, integerToFloat/LogicSingle.Type, integerToFloat/LookupOutcomeValue.Type, integerToFloat/MathOperator.Type, integerToFloat/OutcomeIf.Type, integerToFloat/PatternMatch.Type, integerToFloat/Repeat.Type, integerToFloat/ResponseIf.Type, integerToFloat/RoundTo.Type, integerToFloat/SetValue.Type, integerToFloat/StatsOperator.Type, integerToFloat/StringMatch.Type, integerToFloat/Substring.Type, integerToFloat/TemplateConstraint.Type, integerToFloat/TemplateDefault.Type, integerToFloat/TemplateIf.Type, integerToFloat/NumericLogic1toMany.Type, isNull/AnyN.Type, isNull/BranchRule.Type, isNull/CustomOperator.Type, isNull/Equal.Type, isNull/EqualRounded.Type, isNull/FieldValue.Type, isNull/Index.Type, isNull/Inside.Type, isNull/Logic0toMany.Type, isNull/Logic1toMany.Type, isNull/LogicPair.Type, isNull/LogicSingle.Type, isNull/LookupOutcomeValue.Type, isNull/MathOperator.Type, isNull/OutcomeIf.Type, isNull/PatternMatch.Type, isNull/Repeat.Type, isNull/ResponseIf.Type, isNull/RoundTo.Type, isNull/SetValue.Type, isNull/StatsOperator.Type, isNull/StringMatch.Type, isNull/Substring.Type, isNull/TemplateConstraint.Type, isNull/TemplateDefault.Type, isNull/TemplateIf.Type, not/AnyN.Type, not/BranchRule.Type, not/CustomOperator.Type, not/Equal.Type, not/EqualRounded.Type, not/FieldValue.Type, not/Index.Type, not/Inside.Type, not/Logic0toMany.Type, not/Logic1toMany.Type, not/LogicPair.Type, not/LogicSingle.Type, not/LookupOutcomeValue.Type, not/MathOperator.Type, not/OutcomeIf.Type, not/PatternMatch.Type, not/Repeat.Type, not/ResponseIf.Type, not/RoundTo.Type, not/SetValue.Type, not/StatsOperator.Type, not/StringMatch.Type, not/Substring.Type, not/TemplateConstraint.Type, not/TemplateDefault.Type, not/TemplateIf.Type, preCondition/AssessmentItemRef.Type, preCondition/AssessmentSection.Type, preCondition/TestPart.Type, random/AnyN.Type, random/BranchRule.Type, random/CustomOperator.Type, random/Equal.Type, random/EqualRounded.Type, random/FieldValue.Type, random/Index.Type, random/Inside.Type, random/Logic0toMany.Type, random/Logic1toMany.Type, random/LogicPair.Type, random/LogicSingle.Type, random/LookupOutcomeValue.Type, random/MathOperator.Type, random/OutcomeIf.Type, random/PatternMatch.Type, random/Repeat.Type, random/ResponseIf.Type, random/RoundTo.Type, random/SetValue.Type, random/StatsOperator.Type, random/StringMatch.Type, random/Substring.Type, random/TemplateConstraint.Type, random/TemplateDefault.Type, random/TemplateIf.Type, random/NumericLogic1toMany.Type, round/AnyN.Type, round/BranchRule.Type, round/CustomOperator.Type, round/Equal.Type, round/EqualRounded.Type, round/FieldValue.Type, round/Index.Type, round/Inside.Type, round/Logic0toMany.Type, round/Logic1toMany.Type, round/LogicPair.Type, round/LogicSingle.Type, round/LookupOutcomeValue.Type, round/MathOperator.Type, round/OutcomeIf.Type, round/PatternMatch.Type, round/Repeat.Type, round/ResponseIf.Type, round/RoundTo.Type, round/SetValue.Type, round/StatsOperator.Type, round/StringMatch.Type, round/Substring.Type, round/TemplateConstraint.Type, round/TemplateDefault.Type, round/TemplateIf.Type, round/NumericLogic1toMany.Type, truncate/AnyN.Type, truncate/BranchRule.Type, truncate/CustomOperator.Type, truncate/Equal.Type, truncate/EqualRounded.Type, truncate/FieldValue.Type, truncate/Index.Type, truncate/Inside.Type, truncate/Logic0toMany.Type, truncate/Logic1toMany.Type, truncate/LogicPair.Type, truncate/LogicSingle.Type, truncate/LookupOutcomeValue.Type, truncate/MathOperator.Type, truncate/OutcomeIf.Type, truncate/PatternMatch.Type, truncate/Repeat.Type, truncate/ResponseIf.Type, truncate/RoundTo.Type, truncate/SetValue.Type, truncate/StatsOperator.Type, truncate/StringMatch.Type, truncate/Substring.Type, truncate/TemplateConstraint.Type, truncate/TemplateDefault.Type, truncate/TemplateIf.Type, truncate/NumericLogic1toMany.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes | None.
Source |
    <xs:complexType name="LogicSingle.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="1">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

### 4.5.63 "LookupOutcomeValue.Type" Core Complex Type Description

The XSD description for the "LookupOutcomeValue.Type" Core ComplexType is given in Table 4.5.63.

Table 4.5.63 XSD description for the "LookupOutcomeValue.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The lookupOutcomeValue rule sets the value of an outcome variable to the value obtained by looking up the value of the associated expression in the lookupTable associated with the outcome's declaration.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | lookupOutcomeValue/OutcomeElse.Type, lookupOutcomeValue/OutcomeIf.Type, lookupOutcomeValue/OutcomeProcessing.Type, lookupOutcomeValue/OutcomeProcessingFragment.Type, lookupOutcomeValue/ResponseElse.Type, lookupOutcomeValue/ResponseIf.Type, lookupOutcomeValue/ResponseProcessing.Type, lookupOutcomeValue/ResponseProcessingFragment.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:complexType name="LookupOutcomeValue.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="1">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="identifier.LookupOutcomeValue.Attr" />
    </xs:complexType>

### 4.5.64 "Mapping.Type" Core Complex Type Description

The XSD description for the "Mapping.Type" Core ComplexType is given in Table 4.5.64.

Table 4.5.64 XSD description for the "Mapping.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A special class used to create a mapping from a source set of any baseType (except file and duration) to a single float. Note that mappings from values of base type float should be avoided due to the difficulty of matching floating point values, see the match operator for more details. When mapping containers the result is the sum of the mapped values from the target set. See the MapResponse class for details.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | mapping/ResponseDeclaration.Type
Model | mapEntry{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
lowerBound | xs:double | No | Global | Optional | -
upperBound | xs:double | No | Global | Optional | -
defaultValue | xs:double | No | Global | Optional | 0
Source |
    <xs:complexType name="Mapping.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="mapEntry" minOccurs="1" maxOccurs="unbounded" />
        </xs:sequence>
        <xs:attributeGroup ref="lowerBound.Mapping.Attr" />
        <xs:attributeGroup ref="upperBound.Mapping.Attr" />
        <xs:attributeGroup ref="defaultValue.Mapping.Attr" />
    </xs:complexType>

### 4.5.65 "MatchInteraction.Type" Core Complex Type Description

The XSD description for the "MatchInteraction.Type" Core ComplexType is given in Table 4.5.65.

Table 4.5.65 XSD description for the "MatchInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A match interaction is a blockInteraction that presents candidates with two sets of choices and allows them to create associates between pairs of choices in the two sets, but not between pairs of choices in the same set. Further restrictions can still be placed on the allowable associations using the matchMax characteristic of the choices. The matchInteraction must be bound to a response variable with base-type directedPair and either single or multiple cardinality.
Diagram |
Type Hierarchy | BasePromptInteraction.Type ^---MatchInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | matchInteraction/BlockQuote.Type, matchInteraction/FeedbackBlock.Type, matchInteraction/ItemBody.Type, matchInteraction/StimulusBody.Type, matchInteraction/DD.Type, matchInteraction/Div.Type, matchInteraction/LI.Type, matchInteraction/TDH.Type
Model | prompt{0..1}, simpleMatchSet{2..2}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
shuffle | xs:boolean | No | Global | Optional | false
maxAssociations | xs:nonNegativeInteger | No | Global | Optional | 1
minAssociations | xs:nonNegativeInteger | No | Global | Optional | 0
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="MatchInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BasePromptInteraction.Type">
                <xs:sequence>
                    <xs:element ref="simpleMatchSet" minOccurs="2" maxOccurs="2" />
                </xs:sequence>
                <xs:attributeGroup ref="shuffle.MatchInteraction.Attr" />
                <xs:attributeGroup ref="maxAssociations.MatchInteraction.Attr" />
                <xs:attributeGroup ref="minAssociations.MatchInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.66 "MatchTable.Type" Core Complex Type Description

The XSD description for the "MatchTable.Type" Core ComplexType is given in Table 4.5.66.

Table 4.5.66 XSD description for the "MatchTable.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A matchTable transforms a source integer by finding the first matchTableEntry with an exact match to the source.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | matchTable/OutcomeDeclaration.Type
Model | matchTableEntry{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
defaultValue | xs:string | No | Global | Optional | -
Source |
    <xs:complexType name="MatchTable.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="matchTableEntry" minOccurs="1" maxOccurs="unbounded" />
        </xs:sequence>
        <xs:attributeGroup ref="defaultValue.MatchTable.Attr" />
    </xs:complexType>

### 4.5.67 "MathOperator.Type" Core Complex Type Description

The XSD description for the "MathOperator.Type" Core ComplexType is given in Table 4.5.67.

Table 4.5.67 XSD description for the "MathOperator.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The mathOperator operator takes 1 or more sub-expressions which all have single cardinality and have numerical base-types. The trigonometric functions, sin, cos and tan, take one argument in radians, which evaluates to a single float. Other functions take one numerical argument. Further functions might take more than one numerical argument, e.g. atan2 (two argument arc tan). The result is a single float, except for the functions signum, floor and ceil, which return a single integer. If any of the sub-expressions is NULL, the result is NULL. If any of the sub-expressions falls outside the natural domain of the function called by mathOperator, e.g. log(0) or asin(2), then the result is NULL.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | mathOperator/AnyN.Type, mathOperator/BranchRule.Type, mathOperator/CustomOperator.Type, mathOperator/Equal.Type, mathOperator/EqualRounded.Type, mathOperator/FieldValue.Type, mathOperator/Index.Type, mathOperator/Inside.Type, mathOperator/Logic0toMany.Type, mathOperator/Logic1toMany.Type, mathOperator/LogicPair.Type, mathOperator/LogicSingle.Type, mathOperator/LookupOutcomeValue.Type, mathOperator/MathOperator.Type, mathOperator/OutcomeIf.Type, mathOperator/PatternMatch.Type, mathOperator/Repeat.Type, mathOperator/ResponseIf.Type, mathOperator/RoundTo.Type, mathOperator/SetValue.Type, mathOperator/StatsOperator.Type, mathOperator/StringMatch.Type, mathOperator/Substring.Type, mathOperator/TemplateConstraint.Type, mathOperator/TemplateDefault.Type, mathOperator/TemplateIf.Type, mathOperator/NumericLogic1toMany.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
name | [ Enumeration ] | No | Global | Required | -
Source |
    <xs:complexType name="MathOperator.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="unbounded">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="name.MathOperator.Attr" />
    </xs:complexType>

### 4.5.68 "MediaInteraction.Type" Core Complex Type Description

The XSD description for the "MediaInteraction.Type" Core ComplexType is given in Table 4.5.68.

Table 4.5.68 XSD description for the "MediaInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The Media Interaction allows more control over the way the candidate interacts with a time-based media object and allows the number of times the media object was experienced to be reported in the value of the associated response variable, which must be of base-type integer and single cardinality.
Diagram |
Type Hierarchy | BasePromptInteraction.Type ^---MediaInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | mediaInteraction/BlockQuote.Type, mediaInteraction/FeedbackBlock.Type, mediaInteraction/ItemBody.Type, mediaInteraction/StimulusBody.Type, mediaInteraction/DD.Type, mediaInteraction/Div.Type, mediaInteraction/LI.Type, mediaInteraction/TDH.Type
Model | prompt{0..1} | object{1..1} | qh5:audio{1..1} | qh5:video{1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
autostart | xs:boolean | No | Global | Required | -
minPlays | xs:nonNegativeInteger | No | Global | Optional | 0
maxPlays | xs:nonNegativeInteger | No | Global | Optional | 0
loop | xs:boolean | No | Global | Optional | false
coords | Coords.Type | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="MediaInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BasePromptInteraction.Type">
                <xs:choice>
                    <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                </xs:choice>
                <xs:attributeGroup ref="autostart.MediaInteraction.Attr" />
                <xs:attributeGroup ref="minPlays.MediaInteraction.Attr" />
                <xs:attributeGroup ref="maxPlays.MediaInteraction.Attr" />
                <xs:attributeGroup ref="loop.MediaInteraction.Attr" />
                <xs:attributeGroup ref="coords.MediaInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.69 "ModalFeedback.Type" Core Complex Type Description

The XSD description for the "ModalFeedback.Type" Core ComplexType is given in Table 4.5.69.

Table 4.5.69 XSD description for the "ModalFeedback.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Modal feedback is shown to the candidate directly following response processing. The value of an outcome variable is used in conjunction with the showHide and identifier characteristics to determine whether or not the feedback is shown. The content of the modalFeedback must not contain any interactions.
Diagram |
Properties |
Abstract | false
Mixed | true
Used by |
Elements | modalFeedback/AssessmentItem.Type
Model | ( printedVariable{1..1} | hottext{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}, stylesheet{0..*}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
outcomeIdentifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Required | -
identifier | Identifier.Type | No | Global | Required | -
title | xs:normalizedString | No | Global | Optional | -
Source |
    <xs:complexType name="ModalFeedback.Type" abstract="false" mixed="true">
        <xs:sequence>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                    <xs:choice minOccurs="1" maxOccurs="1">
                        <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                    </xs:choice>
                </xs:choice>
            </xs:choice>
            <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="apip:apipAccessibility" minOccurs="0" maxOccurs="1" />
        </xs:sequence>
        <xs:attributeGroup ref="outcomeIdentifier.ModalFeedback.Attr" />
        <xs:attributeGroup ref="showHide.ModalFeedback.Attr" />
        <xs:attributeGroup ref="identifier.ModalFeedback.Attr" />
        <xs:attributeGroup ref="title.ModalFeedback.Attr" />
    </xs:complexType>

### 4.5.70 "NumericLogic1toMany.Type" Core Complex Type Description

The XSD description for the "NumericLogic1toMany.Type" Core ComplexType is given in Table 4.5.70.

Table 4.5.70 XSD description for the "NumericLogic1toMany.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is the container for the combination of the one or more child numeric expressions (see the NumericExpressionGroup abstract class for the details on the permitted expressions).
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | sum/AnyN.Type, sum/BranchRule.Type, sum/CustomOperator.Type, sum/Equal.Type, sum/EqualRounded.Type, sum/FieldValue.Type, sum/Index.Type, sum/Inside.Type, sum/Logic0toMany.Type, sum/Logic1toMany.Type, sum/LogicPair.Type, sum/LogicSingle.Type, sum/LookupOutcomeValue.Type, sum/MathOperator.Type, sum/OutcomeIf.Type, sum/PatternMatch.Type, sum/Repeat.Type, sum/ResponseIf.Type, sum/RoundTo.Type, sum/SetValue.Type, sum/StatsOperator.Type, sum/StringMatch.Type, sum/Substring.Type, sum/TemplateConstraint.Type, sum/TemplateDefault.Type, sum/TemplateIf.Type, sum/NumericLogic1toMany.Type
Model | ( sum{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | null{1..1} | delete{1..1} | index{1..1} | power{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | integerDivide{1..1} | integerModulus{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | baseValue{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} | randomFloat{1..1} ){1..*}
Attributes | None.
Source |
    <xs:complexType name="NumericLogic1toMany.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="unbounded">
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

### 4.5.71 "OUL.Type" Core Complex Type Description

The XSD description for the "OUL.Type" Core ComplexType is given in Table 4.5.71.

Table 4.5.71 XSD description for the "OUL.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Provides the HTML 'ol' and 'ul' tag functionalities. These provide the ordered and unordered list capability. The 'ol' tag represents a list of items, where the items have been intentionally ordered, such that changing the order would change the meaning of the document. The 'ul' tags have no expicit order relationship. The items of the list are the 'li' child nodes.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---OUL.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | ol/BlockQuote.Type, ol/FeedbackBlock.Type, ol/ItemBody.Type, ol/StimulusBody.Type, ol/GapMatchInteraction.Type, ol/HotTextInteraction.Type, ol/TemplateBlock.Type, ol/TemplateBlockFeedbackBlock.Type, ol/ModalFeedback.Type, ol/TestFeedback.Type, ol/DD.Type, ol/Div.Type, ol/LI.Type, ol/TDH.Type, ol/InfoControl.Type, ol/SimpleAssociableChoice.Type, ol/SimpleChoice.Type, ol/Object.Type, ol/Prompt.Type, ol/RubricBlock.Type, ol/RubricBlockTemplateBlock.Type, ul/BlockQuote.Type, ul/FeedbackBlock.Type, ul/ItemBody.Type, ul/StimulusBody.Type, ul/GapMatchInteraction.Type, ul/HotTextInteraction.Type, ul/TemplateBlock.Type, ul/TemplateBlockFeedbackBlock.Type, ul/ModalFeedback.Type, ul/TestFeedback.Type, ul/DD.Type, ul/Div.Type, ul/LI.Type, ul/TDH.Type, ul/InfoControl.Type, ul/SimpleAssociableChoice.Type, ul/SimpleChoice.Type, ul/Object.Type, ul/Prompt.Type, ul/RubricBlock.Type, ul/RubricBlockTemplateBlock.Type
Model | li{0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="OUL.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:element ref="li" minOccurs="0" maxOccurs="unbounded" />
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.72 "Object.Type" Core Complex Type Description

The XSD description for the "Object.Type" Core ComplexType is given in Table 4.5.72.

Table 4.5.72 XSD description for the "Object.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is the representation for the HTML 'object' tag.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---Object.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | object/DrawingInteraction.Type, object/TemplateBlock.Type, object/TemplateBlockFeedbackBlock.Type, object/ModalFeedback.Type, object/TestFeedback.Type, object/DD.Type, object/Div.Type, object/LI.Type, object/TDH.Type, object/InfoControl.Type, object/SimpleAssociableChoice.Type, object/SimpleChoice.Type, object/Object.Type, object/Prompt.Type, object/RubricBlock.Type, object/RubricBlockTemplateBlock.Type, object/GapImg.Type, object/GraphicAssociateInteraction.Type, object/GraphicGapMatchInteraction.Type, object/GraphicOrderInteraction.Type, object/HotspotInteraction.Type, object/BDO.Type, object/FeedbackBlock.Type, object/FeedbackInline.Type, object/GapText.Type, object/HotText.Type, object/InlineChoice.Type, object/Label.Type, object/A.Type, object/Caption.Type, object/DT.Type, object/HTMLText.Type, object/Q.Type, object/TemplateInline.Type, object/RubricBlockTemplateInline.Type, object/MediaInteraction.Type, object/PositionObjectInteraction.Type, object/PositionObjectStage.Type, object/SelectPointInteraction.Type
Model | ( m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | param{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
data | xs:string | No | Global | Required | -
type | MimeType.Type | No | Global | Required | -
width | Length.Type | No | Global | Optional | -
height | Length.Type | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="Object.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="param" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="data.Object.Attr" />
                <xs:attributeGroup ref="type.Object.Attr" />
                <xs:attributeGroup ref="width.Object.Attr" />
                <xs:attributeGroup ref="height.Object.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.73 "OrderInteraction.Type" Core Complex Type Description

The XSD description for the "OrderInteraction.Type" Core ComplexType is given in Table 4.5.73.

Table 4.5.73 XSD description for the "OrderInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | In an Order Interaction the candidate's task is to reorder the choices, the order in which the choices are displayed initially is significant. By default the candidate's task is to order all of the choices but a subset of the choices can be requested using the maxChoices and minChoices attributes. When specified the candidate must select a subset of the choices and impose an ordering on them.
Diagram |
Type Hierarchy | BasePromptInteraction.Type ^---OrderInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | orderInteraction/BlockQuote.Type, orderInteraction/FeedbackBlock.Type, orderInteraction/ItemBody.Type, orderInteraction/StimulusBody.Type, orderInteraction/DD.Type, orderInteraction/Div.Type, orderInteraction/LI.Type, orderInteraction/TDH.Type
Model | prompt{0..1}, simpleChoice{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
shuffle | xs:boolean | No | Global | Optional | false
minChoices | xs:nonNegativeInteger | No | Global | Optional | -
maxChoices | xs:nonNegativeInteger | No | Global | Optional | -
orientation | [ Enumeration ] | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="OrderInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BasePromptInteraction.Type">
                <xs:sequence>
                    <xs:element ref="simpleChoice" minOccurs="1" maxOccurs="unbounded" />
                </xs:sequence>
                <xs:attributeGroup ref="shuffle.OrderInteraction.Attr" />
                <xs:attributeGroup ref="minChoices.OrderInteraction.Attr" />
                <xs:attributeGroup ref="maxChoices.OrderInteraction.Attr" />
                <xs:attributeGroup ref="orientation.OrderInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.74 "Ordering.Type" Core Complex Type Description

The XSD description for the "Ordering.Type" Core ComplexType is given in Table 4.5.74.

Table 4.5.74 XSD description for the "Ordering.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The ordering class specifies the rule used to arrange the child elements of a section following selection. If no ordering rule is given, assume that the elements are to be ordered in the order in which they are defined. A sub-section is always treated as a single block for selection but the way it is treated when shuffling depends on its visibility. A visible sub-section is always treated as a single block but an invisible sub-section is only treated as a single block if its keepTogether characteristic is 'true'. Otherwise, the child elements of the invisible sub-section are mixed into the parent's selection prior to shuffling. The ordering class also provides an opportunity for extensions to this specification to include support for more complex ordering algorithms. The selection and ordering rules define a sequence of items for each instance of the test. The sequence starts with the first item of the first section of the first test part and continues through to the last item of the last section of the last test part. This sequence is constant throughout the test. Normally this is the logical sequence perceived by the candidate but the use of preConditions and/or branchRules can affect the specific path taken. The use of selection with replacement enables two or more instances of an item referred to by the same assessmentItemRef to appear in the sequence of items for a test. It is therefore an error to make such an item the target of a branchRule. Furthermore, when reporting test results the sequence number of each item must also be reported to avoid ambiguity. See QTI Results Reporting [QTI, 16c]. The ordering class also provides an opportunity for extensions to this specification to include support for more complex ordering algorithms.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | ordering/AssessmentSection.Type
Model | Namespace-based Extension
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
shuffle | xs:boolean | No | Global | Optional | false
##other | [ Namespace Extension ] | No | Global | Optional | -
Source |
    <xs:complexType name="Ordering.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:group ref="grpLax.any" />
        </xs:sequence>
        <xs:attributeGroup ref="shuffle.Ordering.Attr" />
        <xs:attributeGroup ref="extension.Ordering.Attr" />
    </xs:complexType>

### 4.5.75 "OutcomeCondition.Type" Core Complex Type Description

The XSD description for the "OutcomeCondition.Type" Core ComplexType is given in Table 4.5.75.

Table 4.5.75 XSD description for the "OutcomeCondition.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This enables the 'If..Then..Else' rules to be defined for the outcome processing. If the expression given in a outcomeIf or outcomeElseIf evaluates to 'true' then the sub-rules contained within it are followed and any following outcomeElseIf or outcomeElse parts are ignored for this outcome condition. If the expression given in a outcomeIf or outcomeElseIf does not evaluate to 'true' then consideration passes to the next outcomeElseIf or, if there are no more outcomeElseIf parts then the sub-rules of the outcomeElse are followed (if specified).
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | outcomeCondition/OutcomeElse.Type, outcomeCondition/OutcomeIf.Type, outcomeCondition/OutcomeProcessing.Type, outcomeCondition/OutcomeProcessingFragment.Type
Model | outcomeIf{1..1}, outcomeElseIf{0..*}, outcomeElse{0..1}
Attributes | None.
Source |
    <xs:complexType name="OutcomeCondition.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="outcomeIf" minOccurs="1" maxOccurs="1" />
            <xs:element ref="outcomeElseIf" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="outcomeElse" minOccurs="0" maxOccurs="1" />
        </xs:sequence>
    </xs:complexType>

### 4.5.76 "OutcomeElse.Type" Core Complex Type Description

The XSD description for the "OutcomeElse.Type" Core ComplexType is given in Table 4.5.76.

Table 4.5.76 XSD description for the "OutcomeElse.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This provides the else part of the 'if..then..elseif..else' structure for outcomes processing.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | outcomeElse/OutcomeCondition.Type
Model | ( lookupOutcomeValue{1..1} | outcomeProcessingFragment{1..1} | setOutcomeValue{1..1} | xi:include{1..1} | exitTest{1..1} | outcomeCondition{1..1} ){0..*}
Attributes | None.
Source |
    <xs:complexType name="OutcomeElse.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="lookupOutcomeValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeProcessingFragment" minOccurs="1" maxOccurs="1" />
                <xs:element ref="setOutcomeValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                <xs:element ref="exitTest" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeCondition" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

### 4.5.77 "OutcomeIf.Type" Core Complex Type Description

The XSD description for the "OutcomeIf.Type" Core ComplexType is given in Table 4.5.77.

Table 4.5.77 XSD description for the "OutcomeIf.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | An outcomeIf part consists of an expression which must have an effective baseType of boolean and single cardinality. For more information about the runtime data model employed see Expressions (Section 2). It also contains a set of sub-rules. If the expression is true then the sub-rules are processed, otherwise they are skipped (including if the expression is NULL) and the following outcomeElseIf or outcomeElse parts (if any) are considered instead.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | outcomeElseIf/OutcomeCondition.Type, outcomeIf/OutcomeCondition.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}, ( lookupOutcomeValue{1..1} | outcomeProcessingFragment{1..1} | setOutcomeValue{1..1} | xi:include{1..1} | exitTest{1..1} | outcomeCondition{1..1} ){0..*}
Attributes | None.
Source |
    <xs:complexType name="OutcomeIf.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="1">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="lookupOutcomeValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeProcessingFragment" minOccurs="1" maxOccurs="1" />
                <xs:element ref="setOutcomeValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                <xs:element ref="exitTest" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeCondition" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

### 4.5.78 "OutcomeProcessing.Type" Core Complex Type Description

The XSD description for the "OutcomeProcessing.Type" Core ComplexType is given in Table 4.5.78.

Table 4.5.78 XSD description for the "OutcomeProcessing.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Outcome processing takes place each time the candidate submits the responses for an item (when in individual submission mode) or a group of items (when in simultaneous submission mode). It happens after any (item level) response processing triggered by the submission. The values of the test's outcome variables are always reset to their defaults prior to carrying out the instructions described by the outcomeRules. Because outcome processing happens each time the candidate submits responses the resulting values of the test-level outcomes may be used to activate test-level feedback during the test or to control the behaviour of subsequent parts through the use of preConditions and branchRules. The structure of outcome processing is similar to that or responseProcessing.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | outcomeProcessing/AssessmentTest.Type
Model | ( lookupOutcomeValue{1..1} | outcomeProcessingFragment{1..1} | setOutcomeValue{1..1} | xi:include{1..1} | exitTest{1..1} | outcomeCondition{1..1} ){0..*}
Attributes | None.
Source |
    <xs:complexType name="OutcomeProcessing.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="lookupOutcomeValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeProcessingFragment" minOccurs="1" maxOccurs="1" />
                <xs:element ref="setOutcomeValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                <xs:element ref="exitTest" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeCondition" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

### 4.5.79 "OutcomeProcessingFragment.Type" Core Complex Type Description

The XSD description for the "OutcomeProcessingFragment.Type" Core ComplexType is given in Table 4.5.79.

Table 4.5.79 XSD description for the "OutcomeProcessingFragment.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | An outcomeProcessingFragment is a simple group of outcomeRules which are grouped together in order to allow them to be managed as a separate resource. It should not be used for any other purpose.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | outcomeProcessingFragment/OutcomeElse.Type, outcomeProcessingFragment/OutcomeIf.Type, outcomeProcessingFragment/OutcomeProcessing.Type, outcomeProcessingFragment/OutcomeProcessingFragment.Type
Model | ( lookupOutcomeValue{1..1} | outcomeProcessingFragment{1..1} | setOutcomeValue{1..1} | xi:include{1..1} | exitTest{1..1} | outcomeCondition{1..1} ){0..*}
Attributes | None.
Source |
    <xs:complexType name="OutcomeProcessingFragment.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="lookupOutcomeValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeProcessingFragment" minOccurs="1" maxOccurs="1" />
                <xs:element ref="setOutcomeValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                <xs:element ref="exitTest" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeCondition" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

### 4.5.80 "PatternMatch.Type" Core Complex Type Description

The XSD description for the "PatternMatch.Type" Core ComplexType is given in Table 4.5.80.

Table 4.5.80 XSD description for the "PatternMatch.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The patternMatch operator takes a sub-expression which must have single cardinality and a base-type of string. The result is a single boolean with a value of 'true' if the sub-expression matches the regular expression given by pattern and 'false' if it does not. If the sub-expression is NULL then the operator results in NULL.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | patternMatch/AnyN.Type, patternMatch/BranchRule.Type, patternMatch/CustomOperator.Type, patternMatch/Equal.Type, patternMatch/EqualRounded.Type, patternMatch/FieldValue.Type, patternMatch/Index.Type, patternMatch/Inside.Type, patternMatch/Logic0toMany.Type, patternMatch/Logic1toMany.Type, patternMatch/LogicPair.Type, patternMatch/LogicSingle.Type, patternMatch/LookupOutcomeValue.Type, patternMatch/MathOperator.Type, patternMatch/OutcomeIf.Type, patternMatch/PatternMatch.Type, patternMatch/Repeat.Type, patternMatch/ResponseIf.Type, patternMatch/RoundTo.Type, patternMatch/SetValue.Type, patternMatch/StatsOperator.Type, patternMatch/StringMatch.Type, patternMatch/Substring.Type, patternMatch/TemplateConstraint.Type, patternMatch/TemplateDefault.Type, patternMatch/TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
pattern | Union [ StringOrVariableRef ] | No | Global | Required | -
Source |
    <xs:complexType name="PatternMatch.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="1">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="pattern.PatternMatch.Attr" />
    </xs:complexType>

### 4.5.81 "PositionObjectInteraction.Type" Core Complex Type Description

The XSD description for the "PositionObjectInteraction.Type" Core ComplexType is given in Table 4.5.81.

Table 4.5.81 XSD description for the "PositionObjectInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The position object interaction consists of a single image which must be positioned on another graphic image (the stage) by the candidate. Like selectPointInteraction, the associated response may have an areaMapping that scores the response on the basis of comparing it against predefined areas but the delivery engine must not indicate these areas of the stage. Only the actual position(s) selected by the candidate shall be indicated. The position object interaction must be bound to a response variable with a baseType of point and single or multiple cardinality. The point records the coordinates, with respect to the stage, of the centre point of the image being positioned.
Diagram |
Type Hierarchy | BaseSequenceRIdent.Type ^---PositionObjectInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | positionObjectInteraction/PositionObjectStage.Type
Model | object{1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
centerPoint | List of IntegerList.Type | No | Global | Optional | -
minChoices | xs:nonNegativeInteger | No | Global | Optional | -
maxChoices | xs:nonNegativeInteger | No | Global | Optional | 1
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="PositionObjectInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceRIdent.Type">
                <xs:sequence>
                    <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                </xs:sequence>
                <xs:attributeGroup ref="centerPoint.PositionObjectInteraction.Attr" />
                <xs:attributeGroup ref="minChoices.PositionObjectInteraction.Attr" />
                <xs:attributeGroup ref="maxChoices.PositionObjectInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.82 "PositionObjectStage.Type" Core Complex Type Description

The XSD description for the "PositionObjectStage.Type" Core ComplexType is given in Table 4.5.82.

Table 4.5.82 XSD description for the "PositionObjectStage.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is the content frame for the positionObjectInteraction(s).
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | positionObjectStage/BlockQuote.Type, positionObjectStage/FeedbackBlock.Type, positionObjectStage/ItemBody.Type, positionObjectStage/StimulusBody.Type, positionObjectStage/Div.Type
Model | object{1..1}, positionObjectInteraction{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | No | Global | Optional | -
Source |
    <xs:complexType name="PositionObjectStage.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
            <xs:element ref="positionObjectInteraction" minOccurs="1" maxOccurs="unbounded" />
        </xs:sequence>
        <xs:attributeGroup ref="id.PositionObjectStage.Attr" />
    </xs:complexType>

### 4.5.83 "Prompt.Type" Core Complex Type Description

The XSD description for the "Prompt.Type" Core ComplexType is given in Table 4.5.83.

Table 4.5.83 XSD description for the "Prompt.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This enables an author to define the prompt for the question. The way in which the prompt is displayed depends upon the rendering system. The prompt should not be used to contain the actual root of the question.
Diagram |
Type Hierarchy | BaseSequence.Type ^---Prompt.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | prompt/BasePromptInteraction.Type, prompt/GraphicGapMatchInteraction.Type, prompt/GraphicOrderInteraction.Type
Model | ( m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="Prompt.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequence.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.84 "Q.Type" Core Complex Type Description

The XSD description for the "Q.Type" Core ComplexType is given in Table 4.5.84.

Table 4.5.84 XSD description for the "Q.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This provides the content definition for the HTML 'q' tag. The q element represents some phrasing content quoted from another source. Quotation punctuation (such as quotation marks) that is quoting the contents of the tag must not appear immediately before, after, or inside q tags; they will be inserted into the rendering by the user agent. Content inside a 'q' tag must be quoted from another source, whose address, if it has one, may be cited in the cite attribute. The source may be fictional, as when quoting characters in a novel or screenplay. The 'q' tag must not be used in place of quotation marks that do not represent quotes; for example, it is inappropriate to use the q element for marking up sarcastic statements. The use of 'q' tags to mark up quotations is entirely optional; using explicit quotation punctuation without 'q' tags is just as correct.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---Q.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | q/TemplateBlock.Type, q/TemplateBlockFeedbackBlock.Type, q/ModalFeedback.Type, q/TestFeedback.Type, q/DD.Type, q/Div.Type, q/LI.Type, q/TDH.Type, q/InfoControl.Type, q/SimpleAssociableChoice.Type, q/SimpleChoice.Type, q/Object.Type, q/Prompt.Type, q/RubricBlock.Type, q/RubricBlockTemplateBlock.Type, q/BDO.Type, q/FeedbackBlock.Type, q/FeedbackInline.Type, q/GapText.Type, q/HotText.Type, q/InlineChoice.Type, q/Label.Type, q/A.Type, q/Caption.Type, q/DT.Type, q/HTMLText.Type, q/Q.Type, q/TemplateInline.Type, q/RubricBlockTemplateInline.Type
Model | ( textEntryInteraction{1..1} | hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
cite | xs:anyURI | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="Q.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="gap" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="cite.Q.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.85 "Repeat.Type" Core Complex Type Description

The XSD description for the "Repeat.Type" Core ComplexType is given in Table 4.5.85.

Table 4.5.85 XSD description for the "Repeat.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is a QTI expression function. The repeat operator takes one or more sub-expressions, all of which must have either single or ordered cardinality and the same baseType. The result is an ordered container having the same baseType as its sub-expressions. The container is filled sequentially by evaluating each sub-expression in turn and adding the resulting single values to the container, iterating this process numberRepeats times in total. If numberRepeats refers to a variable whose value is less than 1, the value of the whole expression is NULL. Any sub-expressions evaluating to NULL are ignored. If all sub-expressions are NULL then the result is NULL.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | repeat/AnyN.Type, repeat/BranchRule.Type, repeat/CustomOperator.Type, repeat/Equal.Type, repeat/EqualRounded.Type, repeat/FieldValue.Type, repeat/Index.Type, repeat/Inside.Type, repeat/Logic0toMany.Type, repeat/Logic1toMany.Type, repeat/LogicPair.Type, repeat/LogicSingle.Type, repeat/LookupOutcomeValue.Type, repeat/MathOperator.Type, repeat/OutcomeIf.Type, repeat/PatternMatch.Type, repeat/Repeat.Type, repeat/ResponseIf.Type, repeat/RoundTo.Type, repeat/SetValue.Type, repeat/StatsOperator.Type, repeat/StringMatch.Type, repeat/Substring.Type, repeat/TemplateConstraint.Type, repeat/TemplateDefault.Type, repeat/TemplateIf.Type, repeat/NumericLogic1toMany.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
numberRepeats | Union [ IntOrIdentifier ] | No | Global | Required | -
Source |
    <xs:complexType name="Repeat.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="unbounded">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="numberRepeats.Repeat.Attr" />
    </xs:complexType>

### 4.5.86 "ResponseCondition.Type" Core Complex Type Description

The XSD description for the "ResponseCondition.Type" Core ComplexType is given in Table 4.5.86.

Table 4.5.86 XSD description for the "ResponseCondition.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This enables the 'If..Then..Else' rules to be defined for the response processing. If the expression given in a responseIf or responseElseIf evaluates to 'true' then the sub-rules contained within it are followed and any following responseElseIf or responseElse parts are ignored for this response condition. If the expression given in a responseIf or responseElseIf does not evaluate to 'true' then consideration passes to the next responseElseIf or, if there are no more responseElseIf parts then the sub-rules of the responseElse are followed (if specified).
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | responseCondition/ResponseElse.Type, responseCondition/ResponseIf.Type, responseCondition/ResponseProcessing.Type, responseCondition/ResponseProcessingFragment.Type
Model | responseIf{1..1}, responseElseIf{0..*}, responseElse{0..1}
Attributes | None.
Source |
    <xs:complexType name="ResponseCondition.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="responseIf" minOccurs="1" maxOccurs="1" />
            <xs:element ref="responseElseIf" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="responseElse" minOccurs="0" maxOccurs="1" />
        </xs:sequence>
    </xs:complexType>

### 4.5.87 "ResponseDeclaration.Type" Core Complex Type Description

The XSD description for the "ResponseDeclaration.Type" Core ComplexType is given in Table 4.5.87.

Table 4.5.87 XSD description for the "ResponseDeclaration.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Response variables are declared by response declarations and bound to interactions in the itemBody. Each response variable declared may be bound to one and only one interaction. At runtime, response variables are instantiated as part of an item session. Their values are always initialized to NULL (no value) regardless of whether or not a default value is given in the declaration. A response variable with a NULL value indicates that the candidate has not offered a response, either because they have not attempted the item at all or because they have attempted it and chosen not to provide a response. If a default value has been provided for a response variable then the variable is set to this value at the start of the first attempt. If the candidate never attempts the item, in other words, the item session passes straight from the initial state to the closed state without going through the interacting state, then the response variable remains NULL and the default value is never used.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | responseDeclaration/AssessmentItem.Type
Model | defaultValue{0..1}, correctResponse{0..1}, mapping{0..1}, areaMapping{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | UniqueIdentifier.Type | No | Global | Required | -
cardinality | [ Enumeration ] | No | Global | Required | -
baseType | [ Enumeration ] | No | Global | Optional | -
Source |
    <xs:complexType name="ResponseDeclaration.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="defaultValue" minOccurs="0" maxOccurs="1" />
            <xs:element ref="correctResponse" minOccurs="0" maxOccurs="1" />
            <xs:element ref="mapping" minOccurs="0" maxOccurs="1" />
            <xs:element ref="areaMapping" minOccurs="0" maxOccurs="1" />
        </xs:sequence>
        <xs:attributeGroup ref="identifier.ResponseDeclaration.Attr" />
        <xs:attributeGroup ref="cardinality.ResponseDeclaration.Attr" />
        <xs:attributeGroup ref="baseType.ResponseDeclaration.Attr" />
    </xs:complexType>

### 4.5.88 "ResponseElse.Type" Core Complex Type Description

The XSD description for the "ResponseElse.Type" Core ComplexType is given in Table 4.5.88.

Table 4.5.88 XSD description for the "ResponseElse.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This provides the 'Else' clause of the 'If..Then..Else' for the response processing functionality. If the expression given in a responseIf or responseElseIf evaluates to 'true' then the sub-rules contained within it are followed and any following responseElseIf or responseElse parts are ignored for this response condition. If the expression given in a responseIf or responseElseIf does not evaluate to 'true' then consideration passes to the next responseElseIf or, if there are no more responseElseIf parts then the sub-rules of the responseElse are followed (if specified).
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | responseElse/ResponseCondition.Type
Model | ( xi:include{1..1} | responseCondition{1..1} | responseProcessingFragment{1..1} | setOutcomeValue{1..1} | exitResponse{1..1} | lookupOutcomeValue{1..1} ){0..*}
Attributes | None.
Source |
    <xs:complexType name="ResponseElse.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                <xs:element ref="responseCondition" minOccurs="1" maxOccurs="1" />
                <xs:element ref="responseProcessingFragment" minOccurs="1" maxOccurs="1" />
                <xs:element ref="setOutcomeValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="exitResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lookupOutcomeValue" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

### 4.5.89 "ResponseIf.Type" Core Complex Type Description

The XSD description for the "ResponseIf.Type" Core ComplexType is given in Table 4.5.89.

Table 4.5.89 XSD description for the "ResponseIf.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This provides the 'If' and 'ElseIf' clauses of the 'If..Then..Else' for the response processing functionality. A responseIf part consists of an expression which must have an effective baseType of boolean and single cardinality. For more information about the runtime data model employed see Expressions (Section 2). It also contains a set of sub-rules. If the expression is 'true' then the sub-rules are processed, otherwise they are skipped (including if the expression is NULL) and the following responseElseIf or responseElse parts (if any) are considered instead.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | responseElseIf/ResponseCondition.Type, responseIf/ResponseCondition.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}, ( xi:include{1..1} | responseCondition{1..1} | responseProcessingFragment{1..1} | setOutcomeValue{1..1} | exitResponse{1..1} | lookupOutcomeValue{1..1} ){0..*}
Attributes | None.
Source |
    <xs:complexType name="ResponseIf.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="1">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                <xs:element ref="responseCondition" minOccurs="1" maxOccurs="1" />
                <xs:element ref="responseProcessingFragment" minOccurs="1" maxOccurs="1" />
                <xs:element ref="setOutcomeValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="exitResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lookupOutcomeValue" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

### 4.5.90 "ResponseProcessingFragment.Type" Core Complex Type Description

The XSD description for the "ResponseProcessingFragment.Type" Core ComplexType is given in Table 4.5.90.

Table 4.5.90 XSD description for the "ResponseProcessingFragment.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A responseProcessingFragment is a simple group of responseRules which are grouped together in order to allow them to be managed as a separate resource. It should not be used for any other purpose. Note that a response processing template allows a system to carry out response processing without having to parse the individual response processing rules. On the other hand, a responseProcessing element containing a reference to an externally defined response processing fragment must be parsed to determine the actions to carry out.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | responseProcessingFragment/ResponseElse.Type, responseProcessingFragment/ResponseIf.Type, responseProcessingFragment/ResponseProcessing.Type, responseProcessingFragment/ResponseProcessingFragment.Type
Model | ( xi:include{1..1} | responseCondition{1..1} | responseProcessingFragment{1..1} | setOutcomeValue{1..1} | exitResponse{1..1} | lookupOutcomeValue{1..1} ){0..*}
Attributes | None.
Source |
    <xs:complexType name="ResponseProcessingFragment.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                <xs:element ref="responseCondition" minOccurs="1" maxOccurs="1" />
                <xs:element ref="responseProcessingFragment" minOccurs="1" maxOccurs="1" />
                <xs:element ref="setOutcomeValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="exitResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lookupOutcomeValue" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

### 4.5.91 "RoundTo.Type" Core Complex Type Description

The XSD description for the "RoundTo.Type" Core ComplexType is given in Table 4.5.91.

Table 4.5.91 XSD description for the "RoundTo.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The roundTo operator takes one sub-expression which must have single cardinality and a numerical base-type. The result is a single float with the value nearest to that of the expression's value such that when converted to a decimal string it represents the expression rounded by the specified rounding method to the specified precision. If the sub-expression is NULL, then the result is NULL. If the sub-expression is INF, then the result is INF. If the sub-expression is -INF, then the result is -INF. If the argument is NaN, then the result is NULL. When rounding to n significant figures, the deciding digit is the (n+1)th digit counting from the first non-zero digit from the left in the number. If the deciding digit is 5 or greater, the nth digit is increased by 1 and all digits to its right are discarded; if the deciding digit is less than 5, all digits to the right of the nth digit are discarded. When rounding to n decimal places, the deciding digit is the (n+1)th digit counting to the right from the decimal point. If the deciding digit is 5 or greater, the nth digit is increased by 1 and all digits to its right are discarded; if the deciding digit is less than 5, all digits to the right of the nth digit are discarded.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | roundTo/AnyN.Type, roundTo/BranchRule.Type, roundTo/CustomOperator.Type, roundTo/Equal.Type, roundTo/EqualRounded.Type, roundTo/FieldValue.Type, roundTo/Index.Type, roundTo/Inside.Type, roundTo/Logic0toMany.Type, roundTo/Logic1toMany.Type, roundTo/LogicPair.Type, roundTo/LogicSingle.Type, roundTo/LookupOutcomeValue.Type, roundTo/MathOperator.Type, roundTo/OutcomeIf.Type, roundTo/PatternMatch.Type, roundTo/Repeat.Type, roundTo/ResponseIf.Type, roundTo/RoundTo.Type, roundTo/SetValue.Type, roundTo/StatsOperator.Type, roundTo/StringMatch.Type, roundTo/Substring.Type, roundTo/TemplateConstraint.Type, roundTo/TemplateDefault.Type, roundTo/TemplateIf.Type, roundTo/NumericLogic1toMany.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
roundingMode | [ Enumeration ] | No | Global | Required | -
figures | Union [ IntegerOrVariableRef ] | No | Global | Required | -
Source |
    <xs:complexType name="RoundTo.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="1">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="roundingMode.RoundTo.Attr" />
        <xs:attributeGroup ref="figures.RoundTo.Attr" />
    </xs:complexType>

### 4.5.92 "RubricBlock.Type" Core Complex Type Description

The XSD description for the "RubricBlock.Type" Core ComplexType is given in Table 4.5.92.

Table 4.5.92 XSD description for the "RubricBlock.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The container for the rubric block content. A rubric block identifies part of the content that represents instructions to one or more of the actors that view the item. Although rubric blocks are defined as simpleBlocks they must not contain interactions. The visibility of nested rubricBlocks is determined by the outermost element. In other words, if an element is determined to be hidden then all of its content is hidden including conditionally visible elements for which the conditions are satisfied and that therefore would otherwise be visible.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---RubricBlock.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | rubricBlock/AssessmentSection.Type, rubricBlock/ItemBody.Type
Model | ( ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | templateBlock{1..1} | templateInline{1..1} | printedVariable{1..1} ){0..*}, stylesheet{0..*}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
use | xs:normalizedString | No | Global | Optional | -
view | Enumerated List of View.Type | No | Global | Required | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="RubricBlock.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:element name="templateBlock" type="RubricBlockTemplateBlock.Type" minOccurs="1" maxOccurs="1"/>
                        <xs:element name="templateInline" type="RubricBlockTemplateInline.Type" minOccurs="1" maxOccurs="1"/>
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                    </xs:choice>
                    <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
                    <xs:element ref="apip:apipAccessibility" minOccurs="0" maxOccurs="1" />
                </xs:sequence>
                <xs:attributeGroup ref="use.RubricBlock.Attr" />
                <xs:attributeGroup ref="view.RubricBlock.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

#### "templateBlock" Local Element Description

The XSD description for the "templateBlock" Local Element is given in the Table below.

Table - XSD description for the "templateBlock/RubricBlock.Type" Local Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | RubricBlockTemplateBlock.Type
Type Hierarchy | BaseSequenceXBase.Type ^---RubricBlockTemplateBlock.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Model | ( ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | templateBlock{1..1} | printedVariable{1..1} ){0..*}, stylesheet{0..*}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
templateIdentifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Optional | show
identifier | Identifier.Type | No | Global | Required | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="templateBlock" type="RubricBlockTemplateBlock.Type" minOccurs="1" maxOccurs="1" />

#### "templateInline" Local Element Description

The XSD description for the "templateInline" Local Element is given in the Table below.

Table - XSD description for the "templateInline/RubricBlock.Type" Local Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | RubricBlockTemplateInline.Type
Type Hierarchy | BaseSequenceXBase.Type ^---RubricBlockTemplateInline.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Model | ( ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | templateInline{1..1} | printedVariable{1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
templateIdentifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Optional | show
identifier | Identifier.Type | No | Global | Required | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="templateInline" type="RubricBlockTemplateInline.Type" minOccurs="1" maxOccurs="1" />

### 4.5.93 "RubricBlockTemplateBlock.Type" Core Complex Type Description

The XSD description for the "RubricBlockTemplateBlock.Type" Core ComplexType is given in Table 4.5.93.

Table 4.5.93 XSD description for the "RubricBlockTemplateBlock.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is the container for the rubric content that is used in the context of a template block content.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---RubricBlockTemplateBlock.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | templateBlock/RubricBlock.Type, templateBlock/RubricBlockTemplateBlock.Type
Model | ( ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | templateBlock{1..1} | printedVariable{1..1} ){0..*}, stylesheet{0..*}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
templateIdentifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Optional | show
identifier | Identifier.Type | No | Global | Required | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="RubricBlockTemplateBlock.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:element name="templateBlock" type="RubricBlockTemplateBlock.Type" minOccurs="1" maxOccurs="1"/>
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                    </xs:choice>
                    <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
                    <xs:element ref="apip:apipAccessibility" minOccurs="0" maxOccurs="1" />
                </xs:sequence>
                <xs:attributeGroup ref="templateIdentifier.RubricBlockTemplateBlock.Attr" />
                <xs:attributeGroup ref="showHide.RubricBlockTemplateBlock.Attr" />
                <xs:attributeGroup ref="identifier.RubricBlockTemplateBlock.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

#### "templateBlock" Local Element Description

The XSD description for the "templateBlock" Local Element is given in the Table below.

Table - XSD description for the "templateBlock/RubricBlockTemplateBlock.Type" Local Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | RubricBlockTemplateBlock.Type
Type Hierarchy | BaseSequenceXBase.Type ^---RubricBlockTemplateBlock.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Model | ( ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | templateBlock{1..1} | printedVariable{1..1} ){0..*}, stylesheet{0..*}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
templateIdentifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Optional | show
identifier | Identifier.Type | No | Global | Required | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="templateBlock" type="RubricBlockTemplateBlock.Type" minOccurs="1" maxOccurs="1" />

### 4.5.94 "RubricBlockTemplateInline.Type" Core Complex Type Description

The XSD description for the "RubricBlockTemplateInline.Type" Core ComplexType is given in Table 4.5.94.

Table 4.5.94 XSD description for the "RubricBlockTemplateInline.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is the container for the rubric content that is used in the context of a template inline content.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---RubricBlockTemplateInline.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | templateInline/RubricBlock.Type, templateInline/RubricBlockTemplateInline.Type
Model | ( ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | templateInline{1..1} | printedVariable{1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
templateIdentifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Optional | show
identifier | Identifier.Type | No | Global | Required | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="RubricBlockTemplateInline.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:element name="templateInline" type="RubricBlockTemplateInline.Type" minOccurs="1" maxOccurs="1"/>
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="templateIdentifier.RubricBlockTemplateInline.Attr" />
                <xs:attributeGroup ref="showHide.RubricBlockTemplateInline.Attr" />
                <xs:attributeGroup ref="identifier.RubricBlockTemplateInline.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.95 "SelectPointInteraction.Type" Core Complex Type Description

The XSD description for the "SelectPointInteraction.Type" Core ComplexType is given in Table 4.5.95.

Table 4.5.95 XSD description for the "SelectPointInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Like hotspotInteraction, a select point interaction is a graphic interaction. The candidate's task is to select one or more points. The associated response may have an areaMapping that scores the response on the basis of comparing it against predefined areas but the delivery engine must not indicate these areas of the image. Only the actual point(s) selected by the candidate shall be indicated. The select point interaction must be bound to a response variable with a baseType of point and single or multiple cardinality.
Diagram |
Type Hierarchy | BasePromptInteraction.Type ^---SelectPointInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | selectPointInteraction/BlockQuote.Type, selectPointInteraction/FeedbackBlock.Type, selectPointInteraction/ItemBody.Type, selectPointInteraction/StimulusBody.Type, selectPointInteraction/DD.Type, selectPointInteraction/Div.Type, selectPointInteraction/LI.Type, selectPointInteraction/TDH.Type
Model | prompt{0..1}, object{1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
minChoices | xs:nonNegativeInteger | No | Global | Optional | 0
maxChoices | xs:nonNegativeInteger | No | Global | Optional | 0
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="SelectPointInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BasePromptInteraction.Type">
                <xs:sequence>
                    <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                </xs:sequence>
                <xs:attributeGroup ref="minChoices.SelectPointInteraction.Attr" />
                <xs:attributeGroup ref="maxChoices.SelectPointInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.96 "Selection.Type" Core Complex Type Description

The XSD description for the "Selection.Type" Core ComplexType is given in Table 4.5.96.

Table 4.5.96 XSD description for the "Selection.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The selection class specifies the rules used to select the child elements of a section for each test session. If no selection rules are given it must be assumed that all elements are to be selected. The selection class also provides an opportunity for extensions to this specification to include support for more complex selection algorithms.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | selection/AssessmentSection.Type
Model | Namespace-based Extension
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
select | xs:int | No | Global | Required | -
withReplacement | xs:boolean | No | Global | Optional | false
##other | [ Namespace Extension ] | No | Global | Optional | -
Source |
    <xs:complexType name="Selection.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:group ref="grpLax.any" />
        </xs:sequence>
        <xs:attributeGroup ref="select.Selection.Attr" />
        <xs:attributeGroup ref="withReplacement.Selection.Attr" />
        <xs:attributeGroup ref="extension.Selection.Attr" />
    </xs:complexType>

### 4.5.97 "SetValue.Type" Core Complex Type Description

The XSD description for the "SetValue.Type" Core ComplexType is given in Table 4.5.97.

Table 4.5.97 XSD description for the "SetValue.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The setValue rule sets the value of a variable (response, outcome or template) to the value obtained from the associated expression. A variable can be updated with reference to a previously assigned value, in other words, the variable being set may appear in the expression where it takes the value previously assigned to it. Special care is required when using the numeric base-types because floating point values can not be assigned to integer variables and vice-versa. The truncate, round or integerToFloat operators must be used to achieve numeric type conversion.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | setCorrectResponse/TemplateElse.Type, setCorrectResponse/TemplateIf.Type, setCorrectResponse/TemplateProcessing.Type, setDefaultValue/TemplateElse.Type, setDefaultValue/TemplateIf.Type, setDefaultValue/TemplateProcessing.Type, setOutcomeValue/OutcomeElse.Type, setOutcomeValue/OutcomeIf.Type, setOutcomeValue/OutcomeProcessing.Type, setOutcomeValue/OutcomeProcessingFragment.Type, setOutcomeValue/ResponseElse.Type, setOutcomeValue/ResponseIf.Type, setOutcomeValue/ResponseProcessing.Type, setOutcomeValue/ResponseProcessingFragment.Type, setTemplateValue/TemplateElse.Type, setTemplateValue/TemplateIf.Type, setTemplateValue/TemplateProcessing.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:complexType name="SetValue.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="1">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="identifier.SetValue.Attr" />
    </xs:complexType>

### 4.5.98 "SimpleAssociableChoice.Type" Core Complex Type Description

The XSD description for the "SimpleAssociableChoice.Type" Core ComplexType is given in Table 4.5.98.

Table 4.5.98 XSD description for the "SimpleAssociableChoice.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is an ordered set of choices for the set.
Diagram |
Type Hierarchy | BaseSequence.Type ^---SimpleAssociableChoice.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | simpleAssociableChoice/AssociateInteraction.Type, simpleAssociableChoice/SimpleMatchSet.Type
Model | ( printedVariable{1..1} | feedbackBlock{1..1} | feedbackInline{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
fixed | xs:boolean | No | Global | Optional | -
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | -
matchGroup | List of IdentifierList.Type | No | Global | Optional | -
matchMax | xs:nonNegativeInteger | No | Global | Required | -
matchMin | xs:nonNegativeInteger | No | Global | Optional | 0
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="SimpleAssociableChoice.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequence.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="identifier.SimpleAssociableChoice.Attr" />
                <xs:attributeGroup ref="fixed.SimpleAssociableChoice.Attr" />
                <xs:attributeGroup ref="templateIdentifier.SimpleAssociableChoice.Attr" />
                <xs:attributeGroup ref="showHide.SimpleAssociableChoice.Attr" />
                <xs:attributeGroup ref="matchGroup.SimpleAssociableChoice.Attr" />
                <xs:attributeGroup ref="matchMax.SimpleAssociableChoice.Attr" />
                <xs:attributeGroup ref="matchMin.SimpleAssociableChoice.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.99 "SimpleChoice.Type" Core Complex Type Description

The XSD description for the "SimpleChoice.Type" Core ComplexType is given in Table 4.5.99.

Table 4.5.99 XSD description for the "SimpleChoice.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A simpleChoice is a choice that contains flowStatic objects. A simpleChoice must not contain any nested interactions.
Diagram |
Type Hierarchy | BaseSequence.Type ^---SimpleChoice.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | simpleChoice/ChoiceInteraction.Type, simpleChoice/OrderInteraction.Type
Model | ( printedVariable{1..1} | feedbackBlock{1..1} | feedbackInline{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
fixed | xs:boolean | No | Global | Optional | false
templateIdentifier | Identifier.Type | No | Global | Optional | -
showHide | [ Enumeration ] | No | Global | Optional | show
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="SimpleChoice.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequence.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="identifier.SimpleChoice.Attr" />
                <xs:attributeGroup ref="fixed.SimpleChoice.Attr" />
                <xs:attributeGroup ref="templateIdentifier.SimpleChoice.Attr" />
                <xs:attributeGroup ref="showHide.SimpleChoice.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.100 "SimpleMatchSet.Type" Core Complex Type Description

The XSD description for the "SimpleMatchSet.Type" Core ComplexType is given in Table 4.5.100.

Table 4.5.100 XSD description for the "SimpleMatchSet.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is the ordered set of choices for the match set.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | simpleMatchSet/MatchInteraction.Type
Model | simpleAssociableChoice{0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | No | Global | Optional | -
Source |
    <xs:complexType name="SimpleMatchSet.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="simpleAssociableChoice" minOccurs="0" maxOccurs="unbounded" />
        </xs:sequence>
        <xs:attributeGroup ref="id.SimpleMatchSet.Attr" />
    </xs:complexType>

### 4.5.101 "SliderInteraction.Type" Core Complex Type Description

The XSD description for the "SliderInteraction.Type" Core ComplexType is given in Table 4.5.101.

Table 4.5.101 XSD description for the "SliderInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The Slider Interaction presents the candidate with a control for selecting a numerical value between a lower and upper bound. It must be bound to a response variable with single cardinality with a base-type of either integer or float. Note that a slider interaction does not have a default or initial position except where specified by a default value for the associated response variable. The currently selected value, if any, must be clearly indicated to the candidate. Because a slider interaction does not have a default or initial position, except where specified by a default value for the associated response variable, it is difficult to distinguish between an intentional response that corresponds to the slider's initial position and a NULL response. As a workaround, sliderInteraction items have to either a) not count NULL responses (i.e. count all responses as intentional) or b) include a 'skip' button and count its activation combined with a RESPONSE variable that is equal to the slider's initial position as a NULL response
Diagram |
Type Hierarchy | BasePromptInteraction.Type ^---SliderInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | sliderInteraction/BlockQuote.Type, sliderInteraction/FeedbackBlock.Type, sliderInteraction/ItemBody.Type, sliderInteraction/StimulusBody.Type, sliderInteraction/DD.Type, sliderInteraction/Div.Type, sliderInteraction/LI.Type, sliderInteraction/TDH.Type
Model | None
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
lowerBound | NonNegativeDouble.Type | No | Global | Required | -
upperBound | NonNegativeDouble.Type | No | Global | Required | -
step | NonNegativeDouble.Type | No | Global | Optional | 1.0
stepLabel | xs:boolean | No | Global | Optional | false
orientation | [ Enumeration ] | No | Global | Optional | -
reverse | xs:boolean | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="SliderInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BasePromptInteraction.Type">
                <xs:attributeGroup ref="lowerBound.SliderInteraction.Attr" />
                <xs:attributeGroup ref="upperBound.SliderInteraction.Attr" />
                <xs:attributeGroup ref="step.SliderInteraction.Attr" />
                <xs:attributeGroup ref="stepLabel.SliderInteraction.Attr" />
                <xs:attributeGroup ref="orientation.SliderInteraction.Attr" />
                <xs:attributeGroup ref="reverse.SliderInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.102 "StatsOperator.Type" Core Complex Type Description

The XSD description for the "StatsOperator.Type" Core ComplexType is given in Table 4.5.102.

Table 4.5.102 XSD description for the "StatsOperator.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The statsOperator operator takes 1 sub-expression which is a container of multiple or ordered cardinality and has a numerical base-type. The result is a single float. If the sub-expression or any value contained therein is NULL, the result is NULL. If any value contained in the sub-expression is not a numerical value, then the result is NULL.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | statsOperator/AnyN.Type, statsOperator/BranchRule.Type, statsOperator/CustomOperator.Type, statsOperator/Equal.Type, statsOperator/EqualRounded.Type, statsOperator/FieldValue.Type, statsOperator/Index.Type, statsOperator/Inside.Type, statsOperator/Logic0toMany.Type, statsOperator/Logic1toMany.Type, statsOperator/LogicPair.Type, statsOperator/LogicSingle.Type, statsOperator/LookupOutcomeValue.Type, statsOperator/MathOperator.Type, statsOperator/OutcomeIf.Type, statsOperator/PatternMatch.Type, statsOperator/Repeat.Type, statsOperator/ResponseIf.Type, statsOperator/RoundTo.Type, statsOperator/SetValue.Type, statsOperator/StatsOperator.Type, statsOperator/StringMatch.Type, statsOperator/Substring.Type, statsOperator/TemplateConstraint.Type, statsOperator/TemplateDefault.Type, statsOperator/TemplateIf.Type, statsOperator/NumericLogic1toMany.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
name | [ Enumeration ] | No | Global | Required | -
Source |
    <xs:complexType name="StatsOperator.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="1">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="name.StatsOperator.Attr" />
    </xs:complexType>

### 4.5.103 "StimulusBody.Type" Core Complex Type Description

The XSD description for the "StimulusBody.Type" Core ComplexType is given in Table 4.5.103.

Table 4.5.103 XSD description for the "StimulusBody.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is the container for the content that is to be defined as the common stimulus in an Item cf. ItemBody. The stimulus body contains the text, graphics, media objects and interactions that describe the common content and information about how it is structured. The body is presented by combining it with stylesheet information, either explicitly or implicitly using the default style rules of the delivery or authoring system.
Diagram |
Type Hierarchy | BaseSequence.Type ^---StimulusBody.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | stimulusBody/AssessmentStimulus.Type
Model | ( positionObjectStage{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | feedbackBlock{1..1} | templateBlock{1..1} | infoControl{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | hr{1..1} | blockquote{1..1} | table{1..1} | div{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:audio{1..1} | qh5:figure{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:video{1..1} ){1..1} ){1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="StimulusBody.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequence.Type">
                <xs:sequence>
                    <xs:choice minOccurs="1" maxOccurs="unbounded">
                        <xs:element ref="positionObjectStage" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="drawingInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="gapMatchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="matchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicGapMatchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hotspotInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicOrderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="selectPointInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicAssociateInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="sliderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="choiceInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="mediaInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hottextInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="orderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="extendedTextInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="uploadInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="associateInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="infoControl" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.104 "StringMatch.Type" Core Complex Type Description

The XSD description for the "StringMatch.Type" Core ComplexType is given in Table 4.5.104.

Table 4.5.104 XSD description for the "StringMatch.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The stringMatch operator takes two sub-expressions which must have single and a base-type of string. The result is a single boolean with a value of true if the two strings match according to the comparison rules defined by the attributes below and false if they don't. If either sub-expression is NULL then the operator results in NULL.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | stringMatch/AnyN.Type, stringMatch/BranchRule.Type, stringMatch/CustomOperator.Type, stringMatch/Equal.Type, stringMatch/EqualRounded.Type, stringMatch/FieldValue.Type, stringMatch/Index.Type, stringMatch/Inside.Type, stringMatch/Logic0toMany.Type, stringMatch/Logic1toMany.Type, stringMatch/LogicPair.Type, stringMatch/LogicSingle.Type, stringMatch/LookupOutcomeValue.Type, stringMatch/MathOperator.Type, stringMatch/OutcomeIf.Type, stringMatch/PatternMatch.Type, stringMatch/Repeat.Type, stringMatch/ResponseIf.Type, stringMatch/RoundTo.Type, stringMatch/SetValue.Type, stringMatch/StatsOperator.Type, stringMatch/StringMatch.Type, stringMatch/Substring.Type, stringMatch/TemplateConstraint.Type, stringMatch/TemplateDefault.Type, stringMatch/TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
caseSensitive | xs:boolean | No | Global | Required | -
substring | xs:boolean | No | Global | Optional | false
Source |
    <xs:complexType name="StringMatch.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="2" maxOccurs="2">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="caseSensitive.StringMatch.Attr" />
        <xs:attributeGroup ref="substring.StringMatch.Attr" />
    </xs:complexType>

### 4.5.105 "Substring.Type" Core Complex Type Description

The XSD description for the "Substring.Type" Core ComplexType is given in Table 4.5.105.

Table 4.5.105 XSD description for the "Substring.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The substring operator takes two sub-expressions which must both have an effective base-type of string and single cardinality. The result is a single boolean with a value of true if the first expression is a substring of the second expression and false if it isn't. If either sub-expression is NULL then the result of the operator is NULL.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | substring/AnyN.Type, substring/BranchRule.Type, substring/CustomOperator.Type, substring/Equal.Type, substring/EqualRounded.Type, substring/FieldValue.Type, substring/Index.Type, substring/Inside.Type, substring/Logic0toMany.Type, substring/Logic1toMany.Type, substring/LogicPair.Type, substring/LogicSingle.Type, substring/LookupOutcomeValue.Type, substring/MathOperator.Type, substring/OutcomeIf.Type, substring/PatternMatch.Type, substring/Repeat.Type, substring/ResponseIf.Type, substring/RoundTo.Type, substring/SetValue.Type, substring/StatsOperator.Type, substring/StringMatch.Type, substring/Substring.Type, substring/TemplateConstraint.Type, substring/TemplateDefault.Type, substring/TemplateIf.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){2..2}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
caseSensitive | xs:boolean | No | Global | Required | -
Source |
    <xs:complexType name="Substring.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="2" maxOccurs="2">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="caseSensitive.Substring.Attr" />
    </xs:complexType>

### 4.5.106 "TDH.Type" Core Complex Type Description

The XSD description for the "TDH.Type" Core ComplexType is given in Table 4.5.106.

Table 4.5.106 XSD description for the "TDH.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This class allows the defnition of the contents of the HTML 'td' and 'th' tags i.e. the table cells used within the table rows.
Diagram |
Type Hierarchy | BaseSequence.Type ^---TDH.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | td/TR.Type, th/TR.Type
Model | ( printedVariable{1..1} | feedbackBlock{1..1} | hottext{1..1} | feedbackInline{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | textEntryInteraction{1..1} | inlineChoiceInteraction{1..1} | endAttemptInteraction{1..1} | customInteraction{1..1} | drawingInteraction{1..1} | gapMatchInteraction{1..1} | matchInteraction{1..1} | graphicGapMatchInteraction{1..1} | hotspotInteraction{1..1} | graphicOrderInteraction{1..1} | selectPointInteraction{1..1} | graphicAssociateInteraction{1..1} | sliderInteraction{1..1} | choiceInteraction{1..1} | mediaInteraction{1..1} | hottextInteraction{1..1} | orderInteraction{1..1} | extendedTextInteraction{1..1} | uploadInteraction{1..1} | associateInteraction{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
headers | List of IdentifierList.Type | No | Global | Optional | -
scope | [ Enumeration ] | No | Global | Optional | -
abbr | xs:string | No | Global | Optional | -
axis | xs:string | No | Global | Optional | -
rowspan | xs:int | No | Global | Optional | -
colspan | xs:int | No | Global | Optional | -
align | [ Enumeration ] | No | Global | Optional | -
valign | [ Enumeration ] | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="TDH.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequence.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="drawingInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="gapMatchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="matchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicGapMatchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hotspotInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicOrderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="selectPointInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicAssociateInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="sliderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="choiceInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="mediaInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hottextInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="orderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="extendedTextInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="uploadInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="associateInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="headers.TDH.Attr" />
                <xs:attributeGroup ref="scope.TDH.Attr" />
                <xs:attributeGroup ref="abbr.TDH.Attr" />
                <xs:attributeGroup ref="axis.TDH.Attr" />
                <xs:attributeGroup ref="rowspan.TDH.Attr" />
                <xs:attributeGroup ref="colspan.TDH.Attr" />
                <xs:attributeGroup ref="align.TDH.Attr" />
                <xs:attributeGroup ref="valign.TDH.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.107 "TR.Type" Core Complex Type Description

The XSD description for the "TR.Type" Core ComplexType is given in Table 4.5.107.

Table 4.5.107 XSD description for the "TR.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This makes the HTML tag 'tr' available for the definition of tables.
Diagram |
Type Hierarchy | BaseSequence.Type ^---TR.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | tr/TablePart.Type
Model | ( td{1..1} | th{1..1} ){1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="TR.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequence.Type">
                <xs:sequence>
                    <xs:choice minOccurs="1" maxOccurs="unbounded">
                        <xs:element ref="td" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="th" minOccurs="1" maxOccurs="1" />
                    </xs:choice>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.108 "Table.Type" Core Complex Type Description

The XSD description for the "Table.Type" Core ComplexType is given in Table 4.5.108.

Table 4.5.108 XSD description for the "Table.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This provides the HTML 'table' tag functionality within the QTI context.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---Table.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | table/BlockQuote.Type, table/FeedbackBlock.Type, table/ItemBody.Type, table/StimulusBody.Type, table/GapMatchInteraction.Type, table/HotTextInteraction.Type, table/TemplateBlock.Type, table/TemplateBlockFeedbackBlock.Type, table/ModalFeedback.Type, table/TestFeedback.Type, table/DD.Type, table/Div.Type, table/LI.Type, table/TDH.Type, table/InfoControl.Type, table/SimpleAssociableChoice.Type, table/SimpleChoice.Type, table/Object.Type, table/Prompt.Type, table/RubricBlock.Type, table/RubricBlockTemplateBlock.Type
Model | caption{0..1}, col{0..*}, colgroup{0..*}, thead{0..1}, tfoot{0..1}, tbody{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
summary | xs:string | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="Table.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:element ref="caption" minOccurs="0" maxOccurs="1" />
                    <xs:element ref="col" minOccurs="0" maxOccurs="unbounded" />
                    <xs:element ref="colgroup" minOccurs="0" maxOccurs="unbounded" />
                    <xs:element ref="thead" minOccurs="0" maxOccurs="1" />
                    <xs:element ref="tfoot" minOccurs="0" maxOccurs="1" />
                    <xs:element ref="tbody" minOccurs="1" maxOccurs="unbounded" />
                </xs:sequence>
                <xs:attributeGroup ref="summary.Table.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.109 "TablePart.Type" Core Complex Type Description

The XSD description for the "TablePart.Type" Core ComplexType is given in Table 4.5.109.

Table 4.5.109 XSD description for the "TablePart.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This allows the construction of the internal structures in the HTML Table tag, namely: the head, foot and body of the table.
Diagram |
Type Hierarchy | BaseSequence.Type ^---TablePart.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | tbody/Table.Type, tfoot/Table.Type, thead/Table.Type
Model | tr{1..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | off
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="TablePart.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequence.Type">
                <xs:sequence>
                    <xs:element ref="tr" minOccurs="1" maxOccurs="unbounded" />
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.110 "TemplateBlock.Type" Core Complex Type Description

The XSD description for the "TemplateBlock.Type" Core ComplexType is given in Table 4.5.110.

Table 4.5.110 XSD description for the "TemplateBlock.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This class is used to define the block content structures that are available for the creation of Item templates. A templateBlock must not contain any interactions, either directly or indirectly.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---TemplateBlock.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | templateBlock/BlockQuote.Type, templateBlock/FeedbackBlock.Type, templateBlock/ItemBody.Type, templateBlock/StimulusBody.Type, templateBlock/GapMatchInteraction.Type, templateBlock/HotTextInteraction.Type, templateBlock/TemplateBlock.Type, templateBlock/TemplateBlockFeedbackBlock.Type, templateBlock/ModalFeedback.Type, templateBlock/TestFeedback.Type, templateBlock/DD.Type, templateBlock/Div.Type, templateBlock/LI.Type, templateBlock/TDH.Type, templateBlock/InfoControl.Type, templateBlock/SimpleAssociableChoice.Type, templateBlock/SimpleChoice.Type
Model | ( ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | templateBlock{1..1} | templateInline{1..1} | feedbackBlock{1..1} | feedbackInline{1..1} | printedVariable{1..1} ){0..*}, stylesheet{0..*}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
templateIdentifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Optional | show
identifier | Identifier.Type | No | Global | Required | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="TemplateBlock.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element name="feedbackBlock" type="TemplateBlockFeedbackBlock.Type" minOccurs="1" maxOccurs="1"/>
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                    </xs:choice>
                    <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
                    <xs:element ref="apip:apipAccessibility" minOccurs="0" maxOccurs="1" />
                </xs:sequence>
                <xs:attributeGroup ref="templateIdentifier.TemplateBlock.Attr" />
                <xs:attributeGroup ref="showHide.TemplateBlock.Attr" />
                <xs:attributeGroup ref="identifier.TemplateBlock.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

#### "feedbackBlock" Local Element Description

The XSD description for the "feedbackBlock" Local Element is given in the Table below.

Table - XSD description for the "feedbackBlock/TemplateBlock.Type" Local Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TemplateBlockFeedbackBlock.Type
Type Hierarchy | BaseSequenceXBase.Type ^---TemplateBlockFeedbackBlock.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Model | ( ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | templateBlock{1..1} | templateInline{1..1} | feedbackBlock{1..1} | feedbackInline{1..1} | printedVariable{1..1} ){0..*}, stylesheet{0..*}, apip:apipAccessibility{1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
outcomeIdentifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Optional | show
identifier | Identifier.Type | No | Global | Required | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="feedbackBlock" type="TemplateBlockFeedbackBlock.Type" minOccurs="1" maxOccurs="1" />

### 4.5.111 "TemplateBlockFeedbackBlock.Type" Core Complex Type Description

The XSD description for the "TemplateBlockFeedbackBlock.Type" Core ComplexType is given in Table 4.5.111.

Table 4.5.111 XSD description for the "TemplateBlockFeedbackBlock.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This enables the Block content to be placed in template blocks. This structure is used to add constraints on how the block content can be used in recursive block templates.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---TemplateBlockFeedbackBlock.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | feedbackBlock/TemplateBlock.Type, feedbackBlock/TemplateBlockFeedbackBlock.Type
Model | ( ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | templateBlock{1..1} | templateInline{1..1} | feedbackBlock{1..1} | feedbackInline{1..1} | printedVariable{1..1} ){0..*}, stylesheet{0..*}, apip:apipAccessibility{1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
outcomeIdentifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Optional | show
identifier | Identifier.Type | No | Global | Required | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="TemplateBlockFeedbackBlock.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element name="feedbackBlock" type="TemplateBlockFeedbackBlock.Type" minOccurs="1" maxOccurs="1"/>
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                    </xs:choice>
                    <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
                    <xs:element ref="apip:apipAccessibility" minOccurs="1" maxOccurs="1" />
                </xs:sequence>
                <xs:attributeGroup ref="outcomeIdentifier.TemplateBlockFeedbackBlock.Attr" />
                <xs:attributeGroup ref="showHide.TemplateBlockFeedbackBlock.Attr" />
                <xs:attributeGroup ref="identifier.TemplateBlockFeedbackBlock.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

#### "feedbackBlock" Local Element Description

The XSD description for the "feedbackBlock" Local Element is given in the Table below.

Table - XSD description for the "feedbackBlock/TemplateBlockFeedbackBlock.Type" Local Element.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | TemplateBlockFeedbackBlock.Type
Type Hierarchy | BaseSequenceXBase.Type ^---TemplateBlockFeedbackBlock.Type
Properties |
Content | complex
MinOccurs | 1
MaxOccurs | 1
Mixed | true
Model | ( ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | templateBlock{1..1} | templateInline{1..1} | feedbackBlock{1..1} | feedbackInline{1..1} | printedVariable{1..1} ){0..*}, stylesheet{0..*}, apip:apipAccessibility{1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
outcomeIdentifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Optional | show
identifier | Identifier.Type | No | Global | Required | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:element name="feedbackBlock" type="TemplateBlockFeedbackBlock.Type" minOccurs="1" maxOccurs="1" />

### 4.5.112 "TemplateCondition.Type" Core Complex Type Description

The XSD description for the "TemplateCondition.Type" Core ComplexType is given in Table 4.5.112.

Table 4.5.112 XSD description for the "TemplateCondition.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This class enables the definition of the template processing 'If..Then..Else' clause. If the expression given in the templateIf or templateElseIf evaluates to 'true' then the sub-rules contained within it are followed and any following templateElseIf or templateElse parts are ignored for this template condition. If the expression given in the templateIf or templateElseIf does not evaluate to 'true' then consideration passes to the next templateElseIf or, if there are no more templateElseIf parts then the sub-rules of the templateElse are followed (if specified).
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | templateCondition/TemplateElse.Type, templateCondition/TemplateIf.Type, templateCondition/TemplateProcessing.Type
Model | templateIf{1..1}, templateElseIf{0..*}, templateElse{0..1}
Attributes | None.
Source |
    <xs:complexType name="TemplateCondition.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="templateIf" minOccurs="1" maxOccurs="1" />
            <xs:element ref="templateElseIf" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="templateElse" minOccurs="0" maxOccurs="1" />
        </xs:sequence>
    </xs:complexType>

### 4.5.113 "TemplateConstraint.Type" Core Complex Type Description

The XSD description for the "TemplateConstraint.Type" Core ComplexType is given in Table 4.5.113.

Table 4.5.113 XSD description for the "TemplateConstraint.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A templateConstraint contains an expression which must have an effective baseType of boolean and single cardinality. For more information about the runtime data model employed see Expressions (Section 2). If the expression is 'false' (including if the expression is NULL), the template variables are set to their default values and templateProcessing is restarted; this happens repeatedly until the expression is 'true' or the maximum number of iterations is reached. In the event that the maximum number of iterations is reached, any default values provided for the variables during declaration are used. Processing then continues with the next templateRule after the templateConstraint, or finishes if there are no further templateRules. By using a templateConstraint, authors can ensure that the values of variables set during templateProcessing satisfy the condition specified by the boolean expression. For example, two randomly selected numbers might be required which have no common factors. A templateConstraint may occur anywhere as a child of templateProcessing. It may not be used as a child of any other element. Any number of templateConstraints may be used, though two or more consecutive templateConstraints could be combined using the 'and' element to combine their boolean expressions. The maximum number of times that the operations preceding the templateConstraint can be expected to be performed is assumed to be 100; implementations may permit more iterations, but there must be a finite maximum number of iterations. This prevents the occurrence of an endless loop. It is the responsibility of the author to provide default values for any variables assigned under a templateConstraint.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | templateConstraint/TemplateElse.Type, templateConstraint/TemplateIf.Type, templateConstraint/TemplateProcessing.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes | None.
Source |
    <xs:complexType name="TemplateConstraint.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="1">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

### 4.5.114 "TemplateDeclaration.Type" Core Complex Type Description

The XSD description for the "TemplateDeclaration.Type" Core ComplexType is given in Table 4.5.114.

Table 4.5.114 XSD description for the "TemplateDeclaration.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Template declarations declare item variables that are to be used specifically for the purposes of cloning items. They can have their value set only during templateProcessing. They are referred to within the itemBody in order to individualize the clone and possibly also within the responseProcessing rules if the cloning process affects the way the item is scored.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | templateDeclaration/AssessmentItem.Type
Model | defaultValue{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
cardinality | [ Enumeration ] | No | Global | Required | -
baseType | [ Enumeration ] | No | Global | Optional | -
paramVariable | xs:boolean | No | Global | Optional | false
mathVariable | xs:boolean | No | Global | Optional | false
Source |
    <xs:complexType name="TemplateDeclaration.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="defaultValue" minOccurs="0" maxOccurs="1" />
        </xs:sequence>
        <xs:attributeGroup ref="identifier.TemplateDeclaration.Attr" />
        <xs:attributeGroup ref="cardinality.TemplateDeclaration.Attr" />
        <xs:attributeGroup ref="baseType.TemplateDeclaration.Attr" />
        <xs:attributeGroup ref="paramVariable.TemplateDeclaration.Attr" />
        <xs:attributeGroup ref="mathVariable.TemplateDeclaration.Attr" />
    </xs:complexType>

### 4.5.115 "TemplateDefault.Type" Core Complex Type Description

The XSD description for the "TemplateDefault.Type" Core ComplexType is given in Table 4.5.115.

Table 4.5.115 XSD description for the "TemplateDefault.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The default value of a template variable in an item can be overridden based on the test context in which the template is instantiated. The value is obtained by evaluating an expression defined within the reference to the item at test level and which may therefore depend on the values of variables taken from other items in the test or from outcomes defined at test level itself. For consistent results it is vital that the expression is evaluated at the correct time. When the assessmentItemRef occurs in a testPart navigated in linear mode the expression is evaluated immediately prior to the start of the first attempt, after any pre-conditions are evaluated and acted upon but before the templateProcessing rules of the item itself are followed. In nonlinear mode the expression is evaluated at the start of the testPart. In both cases, the timing is unaffected by the submissionMode in effect. Care needs to be taken to ensure that values of response variables are not used before they have been submitted and that outcome variables are not used before their values have been set by the corresponding response or outcomes processing steps. The facility of overriding template defaults allows item templates to be linked to other items (or templates) within a test. A candidate response from one item can be used directly to affect the presentation or even the behaviour of an item presented after it. However once the template is instantiated it operates independently - there is no dynamic link created between the items and no concept of a shared variable space between them.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | templateDefault/AssessmentItemRef.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
templateIdentifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:complexType name="TemplateDefault.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="1">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
        <xs:attributeGroup ref="templateIdentifier.TemplateDefault.Attr" />
    </xs:complexType>

### 4.5.116 "TemplateElse.Type" Core Complex Type Description

The XSD description for the "TemplateElse.Type" Core ComplexType is given in Table 4.5.116.

Table 4.5.116 XSD description for the "TemplateElse.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This enables the definition of the 'Else' clause of the 'If..Then..Else' rule construction when defining a template.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | templateElse/TemplateCondition.Type
Model | ( setTemplateValue{1..1} | exitTemplate{1..1} | templateCondition{1..1} | setDefaultValue{1..1} | setCorrectResponse{1..1} | templateConstraint{1..1} ){0..*}
Attributes | None.
Source |
    <xs:complexType name="TemplateElse.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="setTemplateValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="exitTemplate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="templateCondition" minOccurs="1" maxOccurs="1" />
                <xs:element ref="setDefaultValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="setCorrectResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="templateConstraint" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

### 4.5.117 "TemplateIf.Type" Core Complex Type Description

The XSD description for the "TemplateIf.Type" Core ComplexType is given in Table 4.5.117.

Table 4.5.117 XSD description for the "TemplateIf.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This provides the 'If' and 'ElseIf' clauses of the 'If..Then..Else' for the template processing functionality. A responseIf part consists of an expression which must have an effective baseType of boolean and single cardinality. For more information about the runtime data model employed see Expressions (Section 2). It also contains a set of sub-rules. If the expression is true then the sub-rules are processed, otherwise they are skipped (including if the expression is NULL) and the following templateElseIf or templateElse parts (if any) are considered instead.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | templateElseIf/TemplateCondition.Type, templateIf/TemplateCondition.Type
Model | ( and{1..1} | gt{1..1} | not{1..1} | lt{1..1} | gte{1..1} | lte{1..1} | or{1..1} | sum{1..1} | durationLT{1..1} | durationGTE{1..1} | subtract{1..1} | divide{1..1} | multiple{1..1} | ordered{1..1} | customOperator{1..1} | random{1..1} | numberIncorrect{1..1} | numberCorrect{1..1} | numberPresented{1..1} | numberResponded{1..1} | numberSelected{1..1} | substring{1..1} | equalRounded{1..1} | null{1..1} | delete{1..1} | match{1..1} | index{1..1} | power{1..1} | equal{1..1} | contains{1..1} | containerSize{1..1} | correct{1..1} | default{1..1} | anyN{1..1} | integerDivide{1..1} | integerModulus{1..1} | isNull{1..1} | member{1..1} | product{1..1} | round{1..1} | truncate{1..1} | fieldValue{1..1} | randomInteger{1..1} | randomFloat{1..1} | variable{1..1} | outcomeMinimum{1..1} | outcomeMaximum{1..1} | testVariables{1..1} | integerToFloat{1..1} | inside{1..1} | baseValue{1..1} | patternMatch{1..1} | mapResponsePoint{1..1} | mapResponse{1..1} | stringMatch{1..1} | repeat{1..1} | roundTo{1..1} | lcm{1..1} | gcd{1..1} | min{1..1} | max{1..1} | mathConstant{1..1} | statsOperator{1..1} | mathOperator{1..1} ){1..1}, ( setTemplateValue{1..1} | exitTemplate{1..1} | templateCondition{1..1} | setDefaultValue{1..1} | setCorrectResponse{1..1} | templateConstraint{1..1} ){0..*}
Attributes | None.
Source |
    <xs:complexType name="TemplateIf.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="1">
                <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
            </xs:choice>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="setTemplateValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="exitTemplate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="templateCondition" minOccurs="1" maxOccurs="1" />
                <xs:element ref="setDefaultValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="setCorrectResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="templateConstraint" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

### 4.5.118 "TemplateInline.Type" Core Complex Type Description

The XSD description for the "TemplateInline.Type" Core ComplexType is given in Table 4.5.118.

Table 4.5.118 XSD description for the "TemplateInline.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This enables the Inline content to be placed in templates. This structure is used to add constraints on how the inline content can be used in recursive templates.
Diagram |
Type Hierarchy | BaseSequenceXBase.Type ^---TemplateInline.Type
Properties |
Abstract | false
Mixed | true
Used by |
Elements | templateInline/TemplateBlock.Type, templateInline/TemplateBlockFeedbackBlock.Type, templateInline/FeedbackBlock.Type, templateInline/ModalFeedback.Type, templateInline/TestFeedback.Type, templateInline/FeedbackInline.Type, templateInline/DD.Type, templateInline/Div.Type, templateInline/LI.Type, templateInline/TDH.Type, templateInline/InfoControl.Type, templateInline/SimpleAssociableChoice.Type, templateInline/SimpleChoice.Type, templateInline/GapText.Type, templateInline/HotText.Type, templateInline/InlineChoice.Type, templateInline/Label.Type, templateInline/A.Type, templateInline/Caption.Type, templateInline/DT.Type, templateInline/HTMLText.Type, templateInline/Q.Type, templateInline/TemplateInline.Type
Model | ( hottext{1..1} | printedVariable{1..1} | gap{1..1} | feedbackInline{1..1} | templateInline{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( img{1..1} | br{1..1} | object{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:label{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
templateIdentifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Optional | show
identifier | Identifier.Type | No | Global | Required | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="TemplateInline.Type" abstract="false" mixed="true">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBase.Type">
                <xs:sequence>
                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                        <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="gap" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:choice>
                </xs:sequence>
                <xs:attributeGroup ref="templateIdentifier.TemplateInline.Attr" />
                <xs:attributeGroup ref="showHide.TemplateInline.Attr" />
                <xs:attributeGroup ref="identifier.TemplateInline.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.119 "TemplateProcessing.Type" Core Complex Type Description

The XSD description for the "TemplateProcessing.Type" Core ComplexType is given in Table 4.5.119.

Table 4.5.119 XSD description for the "TemplateProcessing.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Template processing consists of one or more templateRules that are followed by the cloning engine or delivery system in order to assign values to the template variables. Template processing is identical in form to responseProcessing except that the purpose is to assign values to template variables, not outcome variables.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | templateProcessing/AssessmentItem.Type
Model | ( setTemplateValue{1..1} | exitTemplate{1..1} | templateCondition{1..1} | setDefaultValue{1..1} | setCorrectResponse{1..1} | templateConstraint{1..1} ){1..*}
Attributes | None.
Source |
    <xs:complexType name="TemplateProcessing.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:choice minOccurs="1" maxOccurs="unbounded">
                <xs:element ref="setTemplateValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="exitTemplate" minOccurs="1" maxOccurs="1" />
                <xs:element ref="templateCondition" minOccurs="1" maxOccurs="1" />
                <xs:element ref="setDefaultValue" minOccurs="1" maxOccurs="1" />
                <xs:element ref="setCorrectResponse" minOccurs="1" maxOccurs="1" />
                <xs:element ref="templateConstraint" minOccurs="1" maxOccurs="1" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

### 4.5.120 "TestFeedback.Type" Core Complex Type Description

The XSD description for the "TestFeedback.Type" Core ComplexType is given in Table 4.5.120.

Table 4.5.120 XSD description for the "TestFeedback.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This enables the definition of the test-level feedback including the content and when the feedback is to be revealed.
Diagram |
Properties |
Abstract | false
Mixed | true
Used by |
Elements | testFeedback/AssessmentTest.Type, testFeedback/TestPart.Type
Model | ( printedVariable{1..1} | hottext{1..1} | templateInline{1..1} | templateBlock{1..1} | m2:math{1..1} | m3:math{1..1} | xi:include{1..1} | ( pre{1..1} | h1{1..1} | h2{1..1} | h3{1..1} | h4{1..1} | h5{1..1} | h6{1..1} | p{1..1} | address{1..1} | dl{1..1} | ol{1..1} | ul{1..1} | br{1..1} | hr{1..1} | img{1..1} | object{1..1} | blockquote{1..1} | em{1..1} | a{1..1} | code{1..1} | span{1..1} | sub{1..1} | acronym{1..1} | big{1..1} | tt{1..1} | kbd{1..1} | q{1..1} | i{1..1} | dfn{1..1} | abbr{1..1} | strong{1..1} | sup{1..1} | var{1..1} | small{1..1} | samp{1..1} | b{1..1} | cite{1..1} | table{1..1} | div{1..1} | bdo{1..1} | qh5:bdi{1..1} | qh5:figure{1..1} | qh5:audio{1..1} | qh5:video{1..1} | qh5:article{1..1} | qh5:aside{1..1} | qh5:footer{1..1} | qh5:header{1..1} | qh5:label{1..1} | qh5:nav{1..1} | qh5:section{1..1} | qh5:ruby{1..1} | ( ssml11:p{1..1} | ssml11:s{1..1} | ssml11:say-as{1..1} | ssml11:phoneme{1..1} | ssml11:sub{1..1} | ssml11:voice{1..1} | ssml11:emphasis{1..1} | ssml11:break{1..1} | ssml11:prosody{1..1} | ssml11:mark{1..1} | ssml11:audio{1..1} | ssml11:speak{1..1} ){1..1} ){1..1} ){0..*}, stylesheet{0..*}, apip:apipAccessibility{0..1}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
access | [ Enumeration ] | No | Global | Required | -
outcomeIdentifier | Identifier.Type | No | Global | Required | -
showHide | [ Enumeration ] | No | Global | Required | -
identifier | Identifier.Type | No | Global | Required | -
title | xs:normalizedString | No | Global | Optional | -
Source |
    <xs:complexType name="TestFeedback.Type" abstract="false" mixed="true">
        <xs:sequence>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                    <xs:choice minOccurs="1" maxOccurs="1">
                        <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                    </xs:choice>
                </xs:choice>
            </xs:choice>
            <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="apip:apipAccessibility" minOccurs="0" maxOccurs="1" />
        </xs:sequence>
        <xs:attributeGroup ref="access.TestFeedback.Attr" />
        <xs:attributeGroup ref="outcomeIdentifier.TestFeedback.Attr" />
        <xs:attributeGroup ref="showHide.TestFeedback.Attr" />
        <xs:attributeGroup ref="identifier.TestFeedback.Attr" />
        <xs:attributeGroup ref="title.TestFeedback.Attr" />
    </xs:complexType>

### 4.5.121 "TestPart.Type" Core Complex Type Description

The XSD description for the "TestPart.Type" Core ComplexType is given in Table 4.5.121.

Table 4.5.121 XSD description for the "TestPart.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A test is composed of one or more test parts. A testPart represents a major division of the test and is used to control the basic mode parameters that apply to all sections and sub-sections within that part.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | testPart/AssessmentTest.Type
Model | preCondition{0..*}, branchRule{0..*}, itemSessionControl{0..1}, timeLimits{0..1}, ( assessmentSection{1..1} | assessmentSectionRef{1..1} ){1..*}, testFeedback{0..*}
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | xs:normalizedString | No | Global | Required | -
navigationMode | [ Enumeration ] | No | Global | Required | -
submissionMode | [ Enumeration ] | No | Global | Required | -
Source |
    <xs:complexType name="TestPart.Type" abstract="false" mixed="false">
        <xs:sequence>
            <xs:element ref="preCondition" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="branchRule" minOccurs="0" maxOccurs="unbounded" />
            <xs:element ref="itemSessionControl" minOccurs="0" maxOccurs="1" />
            <xs:element ref="timeLimits" minOccurs="0" maxOccurs="1" />
            <xs:choice minOccurs="1" maxOccurs="unbounded">
                <xs:element ref="assessmentSection" minOccurs="1" maxOccurs="1" />
                <xs:element ref="assessmentSectionRef" minOccurs="1" maxOccurs="1" />
            </xs:choice>
            <xs:element ref="testFeedback" minOccurs="0" maxOccurs="unbounded" />
        </xs:sequence>
        <xs:attributeGroup ref="identifier.TestPart.Attr" />
        <xs:attributeGroup ref="navigationMode.TestPart.Attr" />
        <xs:attributeGroup ref="submissionMode.TestPart.Attr" />
    </xs:complexType>

### 4.5.122 "TextEntryInteraction.Type" Core Complex Type Description

The XSD description for the "TextEntryInteraction.Type" Core ComplexType is given in Table 4.5.122.

Table 4.5.122 XSD description for the "TextEntryInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A TextEntry Interaction is an inlineInteraction that obtains a simple piece of text from the candidate. Like inlineChoiceInteraction, the delivery engine must allow the candidate to review their choice within the context of the surrounding text. The textEntryInteraction must be bound to a response variable with single or record cardinality only. If the response variable has single cardinality the baseType must be one of string, integer or float; if it has record cardinality the permitted fields are 'stringValue', 'floatValue', etc.
Diagram |
Type Hierarchy | BaseSequenceXBaseEmpty.Type ^---TextEntryInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | textEntryInteraction/DD.Type, textEntryInteraction/Div.Type, textEntryInteraction/LI.Type, textEntryInteraction/TDH.Type, textEntryInteraction/A.Type, textEntryInteraction/Caption.Type, textEntryInteraction/DT.Type, textEntryInteraction/HTMLText.Type, textEntryInteraction/Q.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
responseIdentifier | UniqueIdentifierRef.Type | No | Global | Required | -
base | xs:int | No | Global | Optional | 10
stringIdentifier | UniqueIdentifierRef.Type | No | Global | Optional | -
expectedLength | xs:nonNegativeInteger | No | Global | Optional | -
patternMask | xs:string | No | Global | Optional | -
placeholderText | xs:string | No | Global | Optional | -
format | xs:normalizedString | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="TextEntryInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BaseSequenceXBaseEmpty.Type">
                <xs:attributeGroup ref="responseIdentifier.TextEntryInteraction.Attr" />
                <xs:attributeGroup ref="base.TextEntryInteraction.Attr" />
                <xs:attributeGroup ref="stringIdentifier.TextEntryInteraction.Attr" />
                <xs:attributeGroup ref="expectedLength.TextEntryInteraction.Attr" />
                <xs:attributeGroup ref="patternMask.TextEntryInteraction.Attr" />
                <xs:attributeGroup ref="placeholderText.TextEntryInteraction.Attr" />
                <xs:attributeGroup ref="format.TextEntryInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

### 4.5.123 "UploadInteraction.Type" Core Complex Type Description

The XSD description for the "UploadInteraction.Type" Core ComplexType is given in Table 4.5.123.

Table 4.5.123 XSD description for the "UploadInteraction.Type" Core Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The Upload Interaction allows the candidate to upload a pre-prepared file representing their response. It must be bound to a response variable with base-type file and single cardinality.
Diagram |
Type Hierarchy | BasePromptInteraction.Type ^---UploadInteraction.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | uploadInteraction/BlockQuote.Type, uploadInteraction/FeedbackBlock.Type, uploadInteraction/ItemBody.Type, uploadInteraction/StimulusBody.Type, uploadInteraction/DD.Type, uploadInteraction/Div.Type, uploadInteraction/LI.Type, uploadInteraction/TDH.Type
Model | None
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | Yes | Global | Optional | -
class | List of StringList.Type | Yes | Global | Optional | -
xml:lang | [ Import ] | Yes | Global | Optional | -
label | xs:normalizedString | Yes | Global | Optional | -
xml:base | [ Import ] | Yes | Global | Optional | -
responseIdentifier | Identifier.Type | Yes | Global | Required | -
dir | [ Enumeration ] | Yes | Global | Optional | auto
role | [ Enumeration ] | Yes | Global | Optional | -
aria-controls | xs:IDREFS | Yes | Global | Optional | -
aria-describedby | xs:IDREFS | Yes | Global | Optional | -
aria-flowsto | xs:IDREFS | Yes | Global | Optional | -
aria-label | xs:normalizedString | Yes | Global | Optional | -
aria-labelledby | xs:IDREFS | Yes | Global | Optional | -
aria-level | ARIALevelInteger.Type | Yes | Global | Optional | -
aria-live | [ Enumeration ] | Yes | Global | Optional | -
aria-orientation | [ Enumeration ] | Yes | Global | Optional | horizontal
aria-owns | xs:IDREFS | Yes | Global | Optional | -
##any | [ Constrained Namespace Extension ] | Yes | Global | Optional | -
type | MimeType.Type | No | Global | Optional | -
Schematron Rules |
NS Constraint | (data-)[a-z|A-Z|0-9|-|.|_]+
Source |
    <xs:complexType name="UploadInteraction.Type" abstract="false" mixed="false">
        <xs:complexContent>
            <xs:extension base="BasePromptInteraction.Type">
                <xs:attributeGroup ref="type.UploadInteraction.Attr" />
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>

## 4.6 Derived Complex Type Descriptions

The syntax and semantics for the Derived ComplexType XSD representations is described in Appendix A1.7.

### 4.6.1 "AreaMapEntry.Type" Derived Complex Type Description

The XSD description for the "AreaMapEntry.Type" Derived Complex Type is given in Table 4.6.1.

Table 4.6.1 XSD description for the "AreaMapEntry.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The map is defined by a set of areaMapEntries, each of which maps an area of the coordinate space onto a single float. When mapping points each area is tested in turn, with those listed first taking priority in the case where areas overlap and a point falls in the intersection.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---AreaMapEntry.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | areaMapEntry/AreaMapping.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
shape | [ Enumeration ] | No | Global | Required | -
coords | Coords.Type | No | Global | Required | -
mappedValue | xs:double | No | Global | Required | -
Source |
    <xs:complexType name="AreaMapEntry.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="shape.AreaMapEntry.Attr" />
                <xs:attributeGroup ref="coords.AreaMapEntry.Attr" />
                <xs:attributeGroup ref="mappedValue.AreaMapEntry.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.2 "AssessmentSectionRef.Type" Derived Complex Type Description

The XSD description for the "AssessmentSectionRef.Type" Derived Complex Type is given in Table 4.6.2.

Table 4.6.2 XSD description for the "AssessmentSectionRef.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Sections can be included into testParts or other assessmentSections by aggregation or by reference. The assessmentSectionRef element enables the inclusion by reference. The only documents that can be refered to by assessmentSectionRef are XML documents that contain a single assessmentSection as a single root. There are no other restrictions on the referenced assessmentSection document. The assessmentSectionRef element functions as a facade for the assessmentSection it refers to. That means that, at runtime, the document that contains the reference - with the refered-to section merged in - should behave exactly the same as a document that has all the same sections aggregated in one document. Adaptive test branch rules can only refer to included or directly referenced sections, they can not refer to sections that are in their turn included or referenced within the referenced section. That is to say, branching rules should treat referred sections as leaf nodes, that have no children that are amenable to branching separately from their immediate parent.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---AssessmentSectionRef.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | assessmentSectionRef/TestPart.Type, assessmentSectionRef/AssessmentSection.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | xs:normalizedString | No | Global | Required | -
href | xs:anyURI | No | Global | Required | -
Source |
    <xs:complexType name="AssessmentSectionRef.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="identifier.AssessmentSectionRef.Attr" />
                <xs:attributeGroup ref="href.AssessmentSectionRef.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.3 "AssessmentStimulusRef.Type" Derived Complex Type Description

The XSD description for the "AssessmentStimulusRef.Type" Derived Complex Type is given in Table 4.6.3.

Table 4.6.3 XSD description for the "AssessmentStimulusRef.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is the structure that enables reference to an 'assessmentStimulus' instance. The stimulus must be contained within its own instance and so the Item uses the 'assessmentStimulusRef' structure to provide the link between the Item and the Stimulus.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---AssessmentStimulusRef.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | assessmentStimulusRef/AssessmentItem.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | xs:normalizedString | No | Global | Required | -
href | xs:anyURI | No | Global | Required | -
Source |
    <xs:complexType name="AssessmentStimulusRef.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="identifier.AssessmentStimulusRef.Attr" />
                <xs:attributeGroup ref="href.AssessmentStimulusRef.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.4 "BaseSequenceXBaseEmpty.Type" Derived Complex Type Description

The XSD description for the "BaseSequenceXBaseEmpty.Type" Derived Complex Type is given in Table 4.6.4.

Table 4.6.4 XSD description for the "BaseSequenceXBaseEmpty.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is the base class for the HTML features and some QTI interactions that have no children elements i.e. must be empty. This consists of a set of child characteristics.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---BaseSequenceXBaseEmpty.Type
Properties |
Abstract | false
Mixed | false
Used by |
ComplexTypes | AssociableHotspot.Type, BR.Type, Col.Type, EndAttemptInteraction.Type, Gap.Type, HR.Type, HotspotChoice.Type, Img.Type, TextEntryInteraction.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | No | Global | Optional | -
class | List of StringList.Type | No | Global | Optional | -
xml:lang | [ Import ] | No | Global | Optional | -
label | xs:normalizedString | No | Global | Optional | -
xml:base | [ Import ] | No | Global | Optional | -
dir | [ Enumeration ] | No | Global | Optional | auto
role | [ Enumeration ] | No | Global | Optional | -
aria-controls | xs:IDREFS | No | Global | Optional | -
aria-describedby | xs:IDREFS | No | Global | Optional | -
aria-flowsto | xs:IDREFS | No | Global | Optional | -
aria-label | xs:normalizedString | No | Global | Optional | -
aria-labelledby | xs:IDREFS | No | Global | Optional | -
aria-level | ARIALevelInteger.Type | No | Global | Optional | -
aria-live | [ Enumeration ] | No | Global | Optional | -
aria-orientation | [ Enumeration ] | No | Global | Optional | horizontal
aria-owns | xs:IDREFS | No | Global | Optional | -
##any | [ Constrained Namespace Extension ] | No | Global | Optional | -
Source |
    <xs:complexType name="BaseSequenceXBaseEmpty.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="id.BaseSequenceXBaseEmpty.Attr" />
                <xs:attributeGroup ref="class.BaseSequenceXBaseEmpty.Attr" />
                <xs:attributeGroup ref="language.BaseSequenceXBaseEmpty.Attr" />
                <xs:attributeGroup ref="label.BaseSequenceXBaseEmpty.Attr" />
                <xs:attributeGroup ref="base.BaseSequenceXBaseEmpty.Attr" />
                <xs:attributeGroup ref="dir.BaseSequenceXBaseEmpty.Attr" />
                <xs:attributeGroup ref="role.BaseSequenceXBaseEmpty.Attr" />
                <xs:attributeGroup ref="aria-controls.BaseSequenceXBaseEmpty.Attr" />
                <xs:attributeGroup ref="aria-describedby.BaseSequenceXBaseEmpty.Attr" />
                <xs:attributeGroup ref="aria-flowsto.BaseSequenceXBaseEmpty.Attr" />
                <xs:attributeGroup ref="aria-label.BaseSequenceXBaseEmpty.Attr" />
                <xs:attributeGroup ref="aria-labelledby.BaseSequenceXBaseEmpty.Attr" />
                <xs:attributeGroup ref="aria-level.BaseSequenceXBaseEmpty.Attr" />
                <xs:attributeGroup ref="aria-live.BaseSequenceXBaseEmpty.Attr" />
                <xs:attributeGroup ref="aria-orientation.BaseSequenceXBaseEmpty.Attr" />
                <xs:attributeGroup ref="aria-owns.BaseSequenceXBaseEmpty.Attr" />
                <xs:attributeGroup ref="dataExtension.BaseSequenceXBaseEmpty.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.5 "BaseValue.Type" Derived Complex Type Description

The XSD description for the "BaseValue.Type" Derived Complex Type is given in Table 4.6.5.

Table 4.6.5 XSD description for the "BaseValue.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | One of the QTI expression functions. The simplest expression returns a single value from the set defined by the given baseType.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | baseValue/AnyN.Type, baseValue/BranchRule.Type, baseValue/CustomOperator.Type, baseValue/Equal.Type, baseValue/EqualRounded.Type, baseValue/FieldValue.Type, baseValue/Index.Type, baseValue/Inside.Type, baseValue/Logic0toMany.Type, baseValue/Logic1toMany.Type, baseValue/LogicPair.Type, baseValue/LogicSingle.Type, baseValue/LookupOutcomeValue.Type, baseValue/MathOperator.Type, baseValue/OutcomeIf.Type, baseValue/PatternMatch.Type, baseValue/Repeat.Type, baseValue/ResponseIf.Type, baseValue/RoundTo.Type, baseValue/SetValue.Type, baseValue/StatsOperator.Type, baseValue/StringMatch.Type, baseValue/Substring.Type, baseValue/TemplateConstraint.Type, baseValue/TemplateDefault.Type, baseValue/TemplateIf.Type, baseValue/NumericLogic1toMany.Type
Model | N/A
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
baseType | [ Enumeration ] | No | Global | Required | -
Source |
    <xs:complexType name="BaseValue.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="xs:string">
                <xs:attributeGroup ref="baseType.BaseValue.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.6 "Correct.Type" Derived Complex Type Description

The XSD description for the "Correct.Type" Derived Complex Type is given in Table 4.6.6.

Table 4.6.6 XSD description for the "Correct.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is a QTI expression. This expression looks up the declaration of a response variable and returns the associated correctResponse or NULL if no correct value was declared. When used in outcomes processing item identifier prefixing (see variable) may be used to obtain the correct response from an individual item.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---Correct.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | correct/AnyN.Type, correct/BranchRule.Type, correct/CustomOperator.Type, correct/Equal.Type, correct/EqualRounded.Type, correct/FieldValue.Type, correct/Index.Type, correct/Inside.Type, correct/Logic0toMany.Type, correct/Logic1toMany.Type, correct/LogicPair.Type, correct/LogicSingle.Type, correct/LookupOutcomeValue.Type, correct/MathOperator.Type, correct/OutcomeIf.Type, correct/PatternMatch.Type, correct/Repeat.Type, correct/ResponseIf.Type, correct/RoundTo.Type, correct/SetValue.Type, correct/StatsOperator.Type, correct/StringMatch.Type, correct/Substring.Type, correct/TemplateConstraint.Type, correct/TemplateDefault.Type, correct/TemplateIf.Type, correct/NumericLogic1toMany.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:complexType name="Correct.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="identifier.Correct.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.7 "Default.Type" Derived Complex Type Description

The XSD description for the "Default.Type" Derived Complex Type is given in Table 4.6.7.

Table 4.6.7 XSD description for the "Default.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is one of the QTI expression functions. This expression looks up the declaration of an itemVariable and returns the associated defaultValue or NULL if no default value was declared. When used in outcomes processing item identifier prefixing (see variable) may be used to obtain the default value from an individual item.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---Default.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | default/AnyN.Type, default/BranchRule.Type, default/CustomOperator.Type, default/Equal.Type, default/EqualRounded.Type, default/FieldValue.Type, default/Index.Type, default/Inside.Type, default/Logic0toMany.Type, default/Logic1toMany.Type, default/LogicPair.Type, default/LogicSingle.Type, default/LookupOutcomeValue.Type, default/MathOperator.Type, default/OutcomeIf.Type, default/PatternMatch.Type, default/Repeat.Type, default/ResponseIf.Type, default/RoundTo.Type, default/SetValue.Type, default/StatsOperator.Type, default/StringMatch.Type, default/Substring.Type, default/TemplateConstraint.Type, default/TemplateDefault.Type, default/TemplateIf.Type, default/NumericLogic1toMany.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:complexType name="Default.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="identifier.Default.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.8 "InterpolationTableEntry.Type" Derived Complex Type Description

The XSD description for the "InterpolationTableEntry.Type" Derived Complex Type is given in Table 4.6.8.

Table 4.6.8 XSD description for the "InterpolationTableEntry.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Provides an interpolation table entry in the associated interpolation table.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---InterpolationTableEntry.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | interpolationTableEntry/InterpolationTable.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sourceValue | xs:double | No | Global | Required | -
includeBoundary | xs:boolean | No | Global | Optional | true
targetValue | xs:string | No | Global | Required | -
Source |
    <xs:complexType name="InterpolationTableEntry.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="sourceValue.InterpolationTableEntry.Attr" />
                <xs:attributeGroup ref="includeBoundary.InterpolationTableEntry.Attr" />
                <xs:attributeGroup ref="targetValue.InterpolationTableEntry.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.9 "ItemSessionControl.Type" Derived Complex Type Description

The XSD description for the "ItemSessionControl.Type" Derived Complex Type is given in Table 4.6.9.

Table 4.6.9 XSD description for the "ItemSessionControl.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | When items are referenced as part of a test, the test may impose constraints on how many attempts, and which states are allowed. These constraints can be specified for individual items, for whole sections or for an entire testPart. By default, a setting at testPart level affects all items in that part unless the setting is overridden at the assessmentSection level or ultimately at the individual assessmentItemRef. The defaults for an ItemSessionControl are used only in the absence of any applicable constraint.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---ItemSessionControl.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | itemSessionControl/AssessmentItemRef.Type, itemSessionControl/AssessmentSection.Type, itemSessionControl/TestPart.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
maxAttempts | xs:int | No | Global | Optional | -
showFeedback | xs:boolean | No | Global | Optional | false
allowReview | xs:boolean | No | Global | Optional | true
showSolution | xs:boolean | No | Global | Optional | false
allowComment | xs:boolean | No | Global | Optional | false
allowSkipping | xs:boolean | No | Global | Optional | true
validateResponses | xs:boolean | No | Global | Optional | false
Source |
    <xs:complexType name="ItemSessionControl.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="maxAttempts.ItemSessionControl.Attr" />
                <xs:attributeGroup ref="showFeedback.ItemSessionControl.Attr" />
                <xs:attributeGroup ref="allowReview.ItemSessionControl.Attr" />
                <xs:attributeGroup ref="showSolution.ItemSessionControl.Attr" />
                <xs:attributeGroup ref="allowComment.ItemSessionControl.Attr" />
                <xs:attributeGroup ref="allowSkipping.ItemSessionControl.Attr" />
                <xs:attributeGroup ref="validateResponses.ItemSessionControl.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.10 "MapEntry.Type" Derived Complex Type Description

The XSD description for the "MapEntry.Type" Derived Complex Type is given in Table 4.6.10.

Table 4.6.10 XSD description for the "MapEntry.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is a part of the mapping functionality. The map is defined by a set of mapEntries, each of which maps a single value from the source set onto a single float.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---MapEntry.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | mapEntry/Mapping.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
mapKey | xs:normalizedString | No | Global | Required | -
mappedValue | xs:double | No | Global | Required | -
caseSensitive | xs:boolean | No | Global | Optional | false
Source |
    <xs:complexType name="MapEntry.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="mapKey.MapEntry.Attr" />
                <xs:attributeGroup ref="mappedValue.MapEntry.Attr" />
                <xs:attributeGroup ref="caseSensitive.MapEntry.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.11 "MapResponse.Type" Derived Complex Type Description

The XSD description for the "MapResponse.Type" Derived Complex Type is given in Table 4.6.11.

Table 4.6.11 XSD description for the "MapResponse.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is a QTI expression function. This expression looks up the value of a response variable and then transforms it using the associated mapping, which must have been declared. The result is a single float. If the response variable has single cardinality then the value returned is simply the mapped target value from the map. If the response variable has multiple or ordered cardinality then the value returned is the sum of the mapped target values. This expression cannot be applied to variables of record cardinality. For example, if a mapping associates the identifiers {A,B,C,D} with the values {0,1,0.5,0} respectively then mapResponse will map the single value 'C' to the numeric value 0.5 and the set of values {C,B} to the value 1.5. If a container contains multiple instances of the same value then that value is counted once only. To continue the example above {B,B,C} would still map to 1.5 and not 2.5.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---MapResponse.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | mapResponse/AnyN.Type, mapResponse/BranchRule.Type, mapResponse/CustomOperator.Type, mapResponse/Equal.Type, mapResponse/EqualRounded.Type, mapResponse/FieldValue.Type, mapResponse/Index.Type, mapResponse/Inside.Type, mapResponse/Logic0toMany.Type, mapResponse/Logic1toMany.Type, mapResponse/LogicPair.Type, mapResponse/LogicSingle.Type, mapResponse/LookupOutcomeValue.Type, mapResponse/MathOperator.Type, mapResponse/OutcomeIf.Type, mapResponse/PatternMatch.Type, mapResponse/Repeat.Type, mapResponse/ResponseIf.Type, mapResponse/RoundTo.Type, mapResponse/SetValue.Type, mapResponse/StatsOperator.Type, mapResponse/StringMatch.Type, mapResponse/Substring.Type, mapResponse/TemplateConstraint.Type, mapResponse/TemplateDefault.Type, mapResponse/TemplateIf.Type, mapResponse/NumericLogic1toMany.Type, mapResponsePoint/AnyN.Type, mapResponsePoint/BranchRule.Type, mapResponsePoint/CustomOperator.Type, mapResponsePoint/Equal.Type, mapResponsePoint/EqualRounded.Type, mapResponsePoint/FieldValue.Type, mapResponsePoint/Index.Type, mapResponsePoint/Inside.Type, mapResponsePoint/Logic0toMany.Type, mapResponsePoint/Logic1toMany.Type, mapResponsePoint/LogicPair.Type, mapResponsePoint/LogicSingle.Type, mapResponsePoint/LookupOutcomeValue.Type, mapResponsePoint/MathOperator.Type, mapResponsePoint/OutcomeIf.Type, mapResponsePoint/PatternMatch.Type, mapResponsePoint/Repeat.Type, mapResponsePoint/ResponseIf.Type, mapResponsePoint/RoundTo.Type, mapResponsePoint/SetValue.Type, mapResponsePoint/StatsOperator.Type, mapResponsePoint/StringMatch.Type, mapResponsePoint/Substring.Type, mapResponsePoint/TemplateConstraint.Type, mapResponsePoint/TemplateDefault.Type, mapResponsePoint/TemplateIf.Type, mapResponsePoint/NumericLogic1toMany.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:complexType name="MapResponse.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="identifier.MapResponse.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.12 "MatchTableEntry.Type" Derived Complex Type Description

The XSD description for the "MatchTableEntry.Type" Derived Complex Type is given in Table 4.6.12.

Table 4.6.12 XSD description for the "MatchTableEntry.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A matchTable transforms a source integer by finding the first matchTableEntry with an exact match to the source. The MatchTableEntry allows the definition of each entry in the table.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---MatchTableEntry.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | matchTableEntry/MatchTable.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sourceValue | xs:int | No | Global | Required | -
targetValue | [ Enumeration ] | No | Global | Required | -
Source |
    <xs:complexType name="MatchTableEntry.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="sourceValue.MatchTableEntry.Attr" />
                <xs:attributeGroup ref="targetValue.MatchTableEntry.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.13 "MathConstant.Type" Derived Complex Type Description

The XSD description for the "MathConstant.Type" Derived Complex Type is given in Table 4.6.13.

Table 4.6.13 XSD description for the "MathConstant.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is a QTI expression function. The result is a mathematical constant returned as a single float, e.g. Pi and e.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---MathConstant.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | mathConstant/AnyN.Type, mathConstant/BranchRule.Type, mathConstant/CustomOperator.Type, mathConstant/Equal.Type, mathConstant/EqualRounded.Type, mathConstant/FieldValue.Type, mathConstant/Index.Type, mathConstant/Inside.Type, mathConstant/Logic0toMany.Type, mathConstant/Logic1toMany.Type, mathConstant/LogicPair.Type, mathConstant/LogicSingle.Type, mathConstant/LookupOutcomeValue.Type, mathConstant/MathOperator.Type, mathConstant/OutcomeIf.Type, mathConstant/PatternMatch.Type, mathConstant/Repeat.Type, mathConstant/ResponseIf.Type, mathConstant/RoundTo.Type, mathConstant/SetValue.Type, mathConstant/StatsOperator.Type, mathConstant/StringMatch.Type, mathConstant/Substring.Type, mathConstant/TemplateConstraint.Type, mathConstant/TemplateDefault.Type, mathConstant/TemplateIf.Type, mathConstant/NumericLogic1toMany.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
name | [ Enumeration ] | No | Global | Required | -
Source |
    <xs:complexType name="MathConstant.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="name.MathConstant.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.14 "Number.Type" Derived Complex Type Description

The XSD description for the "Number.Type" Derived Complex Type is given in Table 4.6.14.

Table 4.6.14 XSD description for the "Number.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is base class for some of the QTI expressions. This is the data-type used in some of the functions that are used in Outcome Processing only and which provide summative information.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---Number.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | numberCorrect/AnyN.Type, numberCorrect/BranchRule.Type, numberCorrect/CustomOperator.Type, numberCorrect/Equal.Type, numberCorrect/EqualRounded.Type, numberCorrect/FieldValue.Type, numberCorrect/Index.Type, numberCorrect/Inside.Type, numberCorrect/Logic0toMany.Type, numberCorrect/Logic1toMany.Type, numberCorrect/LogicPair.Type, numberCorrect/LogicSingle.Type, numberCorrect/LookupOutcomeValue.Type, numberCorrect/MathOperator.Type, numberCorrect/OutcomeIf.Type, numberCorrect/PatternMatch.Type, numberCorrect/Repeat.Type, numberCorrect/ResponseIf.Type, numberCorrect/RoundTo.Type, numberCorrect/SetValue.Type, numberCorrect/StatsOperator.Type, numberCorrect/StringMatch.Type, numberCorrect/Substring.Type, numberCorrect/TemplateConstraint.Type, numberCorrect/TemplateDefault.Type, numberCorrect/TemplateIf.Type, numberCorrect/NumericLogic1toMany.Type, numberIncorrect/AnyN.Type, numberIncorrect/BranchRule.Type, numberIncorrect/CustomOperator.Type, numberIncorrect/Equal.Type, numberIncorrect/EqualRounded.Type, numberIncorrect/FieldValue.Type, numberIncorrect/Index.Type, numberIncorrect/Inside.Type, numberIncorrect/Logic0toMany.Type, numberIncorrect/Logic1toMany.Type, numberIncorrect/LogicPair.Type, numberIncorrect/LogicSingle.Type, numberIncorrect/LookupOutcomeValue.Type, numberIncorrect/MathOperator.Type, numberIncorrect/OutcomeIf.Type, numberIncorrect/PatternMatch.Type, numberIncorrect/Repeat.Type, numberIncorrect/ResponseIf.Type, numberIncorrect/RoundTo.Type, numberIncorrect/SetValue.Type, numberIncorrect/StatsOperator.Type, numberIncorrect/StringMatch.Type, numberIncorrect/Substring.Type, numberIncorrect/TemplateConstraint.Type, numberIncorrect/TemplateDefault.Type, numberIncorrect/TemplateIf.Type, numberIncorrect/NumericLogic1toMany.Type, numberPresented/AnyN.Type, numberPresented/BranchRule.Type, numberPresented/CustomOperator.Type, numberPresented/Equal.Type, numberPresented/EqualRounded.Type, numberPresented/FieldValue.Type, numberPresented/Index.Type, numberPresented/Inside.Type, numberPresented/Logic0toMany.Type, numberPresented/Logic1toMany.Type, numberPresented/LogicPair.Type, numberPresented/LogicSingle.Type, numberPresented/LookupOutcomeValue.Type, numberPresented/MathOperator.Type, numberPresented/OutcomeIf.Type, numberPresented/PatternMatch.Type, numberPresented/Repeat.Type, numberPresented/ResponseIf.Type, numberPresented/RoundTo.Type, numberPresented/SetValue.Type, numberPresented/StatsOperator.Type, numberPresented/StringMatch.Type, numberPresented/Substring.Type, numberPresented/TemplateConstraint.Type, numberPresented/TemplateDefault.Type, numberPresented/TemplateIf.Type, numberPresented/NumericLogic1toMany.Type, numberResponded/AnyN.Type, numberResponded/BranchRule.Type, numberResponded/CustomOperator.Type, numberResponded/Equal.Type, numberResponded/EqualRounded.Type, numberResponded/FieldValue.Type, numberResponded/Index.Type, numberResponded/Inside.Type, numberResponded/Logic0toMany.Type, numberResponded/Logic1toMany.Type, numberResponded/LogicPair.Type, numberResponded/LogicSingle.Type, numberResponded/LookupOutcomeValue.Type, numberResponded/MathOperator.Type, numberResponded/OutcomeIf.Type, numberResponded/PatternMatch.Type, numberResponded/Repeat.Type, numberResponded/ResponseIf.Type, numberResponded/RoundTo.Type, numberResponded/SetValue.Type, numberResponded/StatsOperator.Type, numberResponded/StringMatch.Type, numberResponded/Substring.Type, numberResponded/TemplateConstraint.Type, numberResponded/TemplateDefault.Type, numberResponded/TemplateIf.Type, numberResponded/NumericLogic1toMany.Type, numberSelected/AnyN.Type, numberSelected/BranchRule.Type, numberSelected/CustomOperator.Type, numberSelected/Equal.Type, numberSelected/EqualRounded.Type, numberSelected/FieldValue.Type, numberSelected/Index.Type, numberSelected/Inside.Type, numberSelected/Logic0toMany.Type, numberSelected/Logic1toMany.Type, numberSelected/LogicPair.Type, numberSelected/LogicSingle.Type, numberSelected/LookupOutcomeValue.Type, numberSelected/MathOperator.Type, numberSelected/OutcomeIf.Type, numberSelected/PatternMatch.Type, numberSelected/Repeat.Type, numberSelected/ResponseIf.Type, numberSelected/RoundTo.Type, numberSelected/SetValue.Type, numberSelected/StatsOperator.Type, numberSelected/StringMatch.Type, numberSelected/Substring.Type, numberSelected/TemplateConstraint.Type, numberSelected/TemplateDefault.Type, numberSelected/TemplateIf.Type, numberSelected/NumericLogic1toMany.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sectionIdentifier | Identifier.Type | No | Global | Optional | -
includeCategory | List of IdentifierList.Type | No | Global | Optional | -
excludeCategory | List of IdentifierList.Type | No | Global | Optional | -
Source |
    <xs:complexType name="Number.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="sectionIdentifier.Number.Attr" />
                <xs:attributeGroup ref="includeCategory.Number.Attr" />
                <xs:attributeGroup ref="excludeCategory.Number.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.15 "OutcomeMinMax.Type" Derived Complex Type Description

The XSD description for the "OutcomeMinMax.Type" Derived Complex Type is given in Table 4.6.15.

Table 4.6.15 XSD description for the "OutcomeMinMax.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is a data-type for the 'outcomeMinimum' and 'outcomeMaximum' QTI expressions for outcome processing.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---OutcomeMinMax.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | outcomeMaximum/AnyN.Type, outcomeMaximum/BranchRule.Type, outcomeMaximum/CustomOperator.Type, outcomeMaximum/Equal.Type, outcomeMaximum/EqualRounded.Type, outcomeMaximum/FieldValue.Type, outcomeMaximum/Index.Type, outcomeMaximum/Inside.Type, outcomeMaximum/Logic0toMany.Type, outcomeMaximum/Logic1toMany.Type, outcomeMaximum/LogicPair.Type, outcomeMaximum/LogicSingle.Type, outcomeMaximum/LookupOutcomeValue.Type, outcomeMaximum/MathOperator.Type, outcomeMaximum/OutcomeIf.Type, outcomeMaximum/PatternMatch.Type, outcomeMaximum/Repeat.Type, outcomeMaximum/ResponseIf.Type, outcomeMaximum/RoundTo.Type, outcomeMaximum/SetValue.Type, outcomeMaximum/StatsOperator.Type, outcomeMaximum/StringMatch.Type, outcomeMaximum/Substring.Type, outcomeMaximum/TemplateConstraint.Type, outcomeMaximum/TemplateDefault.Type, outcomeMaximum/TemplateIf.Type, outcomeMaximum/NumericLogic1toMany.Type, outcomeMinimum/AnyN.Type, outcomeMinimum/BranchRule.Type, outcomeMinimum/CustomOperator.Type, outcomeMinimum/Equal.Type, outcomeMinimum/EqualRounded.Type, outcomeMinimum/FieldValue.Type, outcomeMinimum/Index.Type, outcomeMinimum/Inside.Type, outcomeMinimum/Logic0toMany.Type, outcomeMinimum/Logic1toMany.Type, outcomeMinimum/LogicPair.Type, outcomeMinimum/LogicSingle.Type, outcomeMinimum/LookupOutcomeValue.Type, outcomeMinimum/MathOperator.Type, outcomeMinimum/OutcomeIf.Type, outcomeMinimum/PatternMatch.Type, outcomeMinimum/Repeat.Type, outcomeMinimum/ResponseIf.Type, outcomeMinimum/RoundTo.Type, outcomeMinimum/SetValue.Type, outcomeMinimum/StatsOperator.Type, outcomeMinimum/StringMatch.Type, outcomeMinimum/Substring.Type, outcomeMinimum/TemplateConstraint.Type, outcomeMinimum/TemplateDefault.Type, outcomeMinimum/TemplateIf.Type, outcomeMinimum/NumericLogic1toMany.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sectionIdentifier | Identifier.Type | No | Global | Optional | -
includeCategory | List of IdentifierList.Type | No | Global | Optional | -
excludeCategory | List of IdentifierList.Type | No | Global | Optional | -
outcomeIdentifier | Identifier.Type | No | Global | Required | -
weightIdentifier | Identifier.Type | No | Global | Optional | -
Source |
    <xs:complexType name="OutcomeMinMax.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="sectionIdentifier.OutcomeMinMax.Attr" />
                <xs:attributeGroup ref="includeCategory.OutcomeMinMax.Attr" />
                <xs:attributeGroup ref="excludeCategory.OutcomeMinMax.Attr" />
                <xs:attributeGroup ref="outcomeIdentifier.OutcomeMinMax.Attr" />
                <xs:attributeGroup ref="weightIdentifier.OutcomeMinMax.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.16 "Param.Type" Derived Complex Type Description

The XSD description for the "Param.Type" Derived Complex Type is given in Table 4.6.16.

Table 4.6.16 XSD description for the "Param.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is the container for a parameter being passed to the HTML 'object' tag.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---Param.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | param/Object.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
name | xs:string | No | Global | Required | -
value | xs:string | No | Global | Required | -
valuetype | [ Enumeration ] | No | Global | Required | -
type | MimeType.Type | No | Global | Optional | -
Source |
    <xs:complexType name="Param.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="name.Param.Attr" />
                <xs:attributeGroup ref="value.Param.Attr" />
                <xs:attributeGroup ref="valuetype.Param.Attr" />
                <xs:attributeGroup ref="type.Param.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.17 "PrintedVariable.Type" Derived Complex Type Description

The XSD description for the "PrintedVariable.Type" Derived Complex Type is given in Table 4.6.17.

Table 4.6.17 XSD description for the "PrintedVariable.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The outcome variable or template variable must have been defined. The values of response variables cannot be printed directly as their values are implicitly known to the candidate through the interactions they are bound to; if necessary, their values can be assigned to outcomes during responseProcessing and displayed to the candidate as part of a bodyElement visible only in the appropriate feedback states. If the variable's value is NULL then the element is ignored. Variables of baseType string are treated as simple runs of text. Variables of baseType integer or float are converted to runs of text (strings) using the formatting rules described below. Float values should only be formatted in the e, E, f, g, G, r or R styles. Variables of baseType duration are treated as floats, representing the duration in seconds. Variables of baseType file are rendered using a control that enables the user to open the file. The control should display the name associated with the file, if any. Variables of baseType uri are rendered using a control that enables the user to open the identified resource, for example, by following a hypertext link in the case of a URL. For variables of single cardinality, the value of the variable is printed. For variables of ordered cardinality, if the attribute index is set, the single value corresponding to the indexed member is printed, otherwise an ordered list of the values within the container is printed, delimited by the string value of the delimiter attribute. For variables of multiple cardinality, a list of the values within the container is printed, delimited by the string value of the delimiter attribute. For variables of record cardinality, if the attribute field is set, the value corresponding to the specified field is printed, otherwise a list of the field names and corresponding field values within the variable is printed, delimited by the string value of the delimiter attribute and with the correspondence between them indicated by the string value of the mappingIndicator attribute.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---PrintedVariable.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | printedVariable/TemplateBlock.Type, printedVariable/TemplateBlockFeedbackBlock.Type, printedVariable/FeedbackBlock.Type, printedVariable/ModalFeedback.Type, printedVariable/TestFeedback.Type, printedVariable/FeedbackInline.Type, printedVariable/DD.Type, printedVariable/Div.Type, printedVariable/LI.Type, printedVariable/TDH.Type, printedVariable/InfoControl.Type, printedVariable/SimpleAssociableChoice.Type, printedVariable/SimpleChoice.Type, printedVariable/GapText.Type, printedVariable/HotText.Type, printedVariable/InlineChoice.Type, printedVariable/Label.Type, printedVariable/A.Type, printedVariable/Caption.Type, printedVariable/DT.Type, printedVariable/HTMLText.Type, printedVariable/Q.Type, printedVariable/TemplateInline.Type, printedVariable/RubricBlock.Type, printedVariable/RubricBlockTemplateBlock.Type, printedVariable/RubricBlockTemplateInline.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
id | UniqueIdentifier.Type | No | Global | Optional | -
class | List of StringList.Type | No | Global | Optional | -
xml:lang | [ Import ] | No | Global | Optional | -
label | xs:normalizedString | No | Global | Optional | -
xml:base | [ Import ] | No | Global | Optional | -
identifier | Identifier.Type | No | Global | Required | -
format | xs:normalizedString | No | Global | Optional | -
base | Union [ IntegerOrVariableRef ] | No | Global | Optional | 10
index | Union [ IntegerOrVariableRef ] | No | Global | Optional | -
powerForm | xs:boolean | No | Global | Optional | false
field | xs:normalizedString | No | Global | Optional | -
delimiter | xs:normalizedString | No | Global | Optional | ;
mappingIndicator | xs:normalizedString | No | Global | Optional | =
Source |
    <xs:complexType name="PrintedVariable.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="id.PrintedVariable.Attr" />
                <xs:attributeGroup ref="class.PrintedVariable.Attr" />
                <xs:attributeGroup ref="language.PrintedVariable.Attr" />
                <xs:attributeGroup ref="label.PrintedVariable.Attr" />
                <xs:attributeGroup ref="baseuri.PrintedVariable.Attr" />
                <xs:attributeGroup ref="identifier.PrintedVariable.Attr" />
                <xs:attributeGroup ref="format.PrintedVariable.Attr" />
                <xs:attributeGroup ref="base.PrintedVariable.Attr" />
                <xs:attributeGroup ref="index.PrintedVariable.Attr" />
                <xs:attributeGroup ref="powerForm.PrintedVariable.Attr" />
                <xs:attributeGroup ref="field.PrintedVariable.Attr" />
                <xs:attributeGroup ref="delimiter.PrintedVariable.Attr" />
                <xs:attributeGroup ref="mappingIndicator.PrintedVariable.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.18 "RandomFloat.Type" Derived Complex Type Description

The XSD description for the "RandomFloat.Type" Derived Complex Type is given in Table 4.6.18.

Table 4.6.18 XSD description for the "RandomFloat.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is a QTI expresssion function. Selects a random float from the specified range [min,max].
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---RandomFloat.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | randomFloat/AnyN.Type, randomFloat/BranchRule.Type, randomFloat/CustomOperator.Type, randomFloat/Equal.Type, randomFloat/EqualRounded.Type, randomFloat/FieldValue.Type, randomFloat/Index.Type, randomFloat/Inside.Type, randomFloat/Logic0toMany.Type, randomFloat/Logic1toMany.Type, randomFloat/LogicPair.Type, randomFloat/LogicSingle.Type, randomFloat/LookupOutcomeValue.Type, randomFloat/MathOperator.Type, randomFloat/OutcomeIf.Type, randomFloat/PatternMatch.Type, randomFloat/Repeat.Type, randomFloat/ResponseIf.Type, randomFloat/RoundTo.Type, randomFloat/SetValue.Type, randomFloat/StatsOperator.Type, randomFloat/StringMatch.Type, randomFloat/Substring.Type, randomFloat/TemplateConstraint.Type, randomFloat/TemplateDefault.Type, randomFloat/TemplateIf.Type, randomFloat/NumericLogic1toMany.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
min | Union [ FloatOrVariableRef ] | No | Global | Optional | 0
max | Union [ FloatOrVariableRef ] | No | Global | Required | -
Source |
    <xs:complexType name="RandomFloat.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="min.RandomFloat.Attr" />
                <xs:attributeGroup ref="max.RandomFloat.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.19 "RandomInteger.Type" Derived Complex Type Description

The XSD description for the "RandomInteger.Type" Derived Complex Type is given in Table 4.6.19.

Table 4.6.19 XSD description for the "RandomInteger.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is a QTI expression function. Selects a random integer from the specified range [min,max] satisfying min + step * n for some integer n. For example, with min=2, max=11 and step=3 the values {2,5,8,11} are possible.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---RandomInteger.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | randomInteger/AnyN.Type, randomInteger/BranchRule.Type, randomInteger/CustomOperator.Type, randomInteger/Equal.Type, randomInteger/EqualRounded.Type, randomInteger/FieldValue.Type, randomInteger/Index.Type, randomInteger/Inside.Type, randomInteger/Logic0toMany.Type, randomInteger/Logic1toMany.Type, randomInteger/LogicPair.Type, randomInteger/LogicSingle.Type, randomInteger/LookupOutcomeValue.Type, randomInteger/MathOperator.Type, randomInteger/OutcomeIf.Type, randomInteger/PatternMatch.Type, randomInteger/Repeat.Type, randomInteger/ResponseIf.Type, randomInteger/RoundTo.Type, randomInteger/SetValue.Type, randomInteger/StatsOperator.Type, randomInteger/StringMatch.Type, randomInteger/Substring.Type, randomInteger/TemplateConstraint.Type, randomInteger/TemplateDefault.Type, randomInteger/TemplateIf.Type, randomInteger/NumericLogic1toMany.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
min | Union [ IntegerOrVariableRef ] | No | Global | Optional | 0
max | Union [ IntegerOrVariableRef ] | No | Global | Required | -
step | Union [ IntegerOrVariableRef ] | No | Global | Optional | 1
Source |
    <xs:complexType name="RandomInteger.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="min.RandomInteger.Attr" />
                <xs:attributeGroup ref="max.RandomInteger.Attr" />
                <xs:attributeGroup ref="step.RandomInteger.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.20 "StyleSheet.Type" Derived Complex Type Description

The XSD description for the "StyleSheet.Type" Derived Complex Type is given in Table 4.6.20.

Table 4.6.20 XSD description for the "StyleSheet.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Used to associate an external stylesheet with an object such as an assessmentItem, etc. QTI supports CSS 2.1 and CSS 3.0.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---StyleSheet.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | stylesheet/AssessmentItem.Type, stylesheet/AssessmentStimulus.Type, stylesheet/AssessmentTest.Type, stylesheet/FeedbackBlock.Type, stylesheet/ModalFeedback.Type, stylesheet/RubricBlock.Type, stylesheet/RubricBlockTemplateBlock.Type, stylesheet/TemplateBlock.Type, stylesheet/TemplateBlockFeedbackBlock.Type, stylesheet/TestFeedback.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
href | xs:anyURI | No | Global | Required | -
type | MimeType.Type | No | Global | Required | -
media | xs:normalizedString | No | Global | Optional | -
title | xs:normalizedString | No | Global | Optional | -
Source |
    <xs:complexType name="StyleSheet.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="href.StyleSheet.Attr" />
                <xs:attributeGroup ref="type.StyleSheet.Attr" />
                <xs:attributeGroup ref="media.StyleSheet.Attr" />
                <xs:attributeGroup ref="title.StyleSheet.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.21 "TestVariables.Type" Derived Complex Type Description

The XSD description for the "TestVariables.Type" Derived Complex Type is given in Table 4.6.21.

Table 4.6.21 XSD description for the "TestVariables.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is a QTI expression function. This expression, which can only be used in outcomes processing, simultaneously looks up the value of an itemVariable in a sub-set of the items referred to in a test. Only variables with single cardinality are considered, all NULL values are ignored. The result has cardinality multiple and base-type as specified below.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---TestVariables.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | testVariables/AnyN.Type, testVariables/BranchRule.Type, testVariables/CustomOperator.Type, testVariables/Equal.Type, testVariables/EqualRounded.Type, testVariables/FieldValue.Type, testVariables/Index.Type, testVariables/Inside.Type, testVariables/Logic0toMany.Type, testVariables/Logic1toMany.Type, testVariables/LogicPair.Type, testVariables/LogicSingle.Type, testVariables/LookupOutcomeValue.Type, testVariables/MathOperator.Type, testVariables/OutcomeIf.Type, testVariables/PatternMatch.Type, testVariables/Repeat.Type, testVariables/ResponseIf.Type, testVariables/RoundTo.Type, testVariables/SetValue.Type, testVariables/StatsOperator.Type, testVariables/StringMatch.Type, testVariables/Substring.Type, testVariables/TemplateConstraint.Type, testVariables/TemplateDefault.Type, testVariables/TemplateIf.Type, testVariables/NumericLogic1toMany.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sectionIdentifier | Identifier.Type | No | Global | Optional | -
includeCategory | List of IdentifierList.Type | No | Global | Optional | -
excludeCategory | List of IdentifierList.Type | No | Global | Optional | -
variableIdentifier | Identifier.Type | No | Global | Required | -
weightIdentifier | Identifier.Type | No | Global | Optional | -
baseType | [ Enumeration ] | No | Global | Optional | -
Source |
    <xs:complexType name="TestVariables.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="sectionIdentifier.TestVariables.Attr" />
                <xs:attributeGroup ref="includeCategory.TestVariables.Attr" />
                <xs:attributeGroup ref="excludeCategory.TestVariables.Attr" />
                <xs:attributeGroup ref="variableIdentifier.TestVariables.Attr" />
                <xs:attributeGroup ref="weightIdentifier.TestVariables.Attr" />
                <xs:attributeGroup ref="baseType.TestVariables.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.22 "TimeLimits.Type" Derived Complex Type Description

The XSD description for the "TimeLimits.Type" Derived Complex Type is given in Table 4.6.22.

Table 4.6.22 XSD description for the "TimeLimits.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | In the context of a specific assessmentTest an item, or group of items, may be subject to a time constraint. This specification supports both minimum and maximum time constraints. The controlled time for a single item is simply the duration of the item session as defined by the builtin response variable duration. For assessmentSections, testParts and whole assessmentTests the time limits relate to the durations of all the item sessions plus any other time spent navigating that part of the test. In other words, the time includes time spent in states where no item is being interacted with, such as dedicated navigation screens. The allowLateSubmission attribute regulates whether a candidate's response that is beyond the maxTime should still be accepted. Minimum times are applicable to assessmentSections and assessmentItems only when linear navigation mode is in effect.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---TimeLimits.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | timeLimits/AssessmentItemRef.Type, timeLimits/AssessmentSection.Type, timeLimits/AssessmentTest.Type, timeLimits/TestPart.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
minTime | NonNegativeDouble.Type | No | Global | Optional | -
maxTime | NonNegativeDouble.Type | No | Global | Optional | -
allowLateSubmission | xs:boolean | No | Global | Optional | false
Source |
    <xs:complexType name="TimeLimits.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="minTime.TimeLimits.Attr" />
                <xs:attributeGroup ref="maxTime.TimeLimits.Attr" />
                <xs:attributeGroup ref="allowLateSubmission.TimeLimits.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.23 "Value.Type" Derived Complex Type Description

The XSD description for the "Value.Type" Derived Complex Type is given in Table 4.6.23.

Table 4.6.23 XSD description for the "Value.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | A class that can represent a single value of any baseType in variable declarations and result reports. The base-type is defined by the baseType attribute of the declaration except in the case of variables with record cardinality.
Diagram |
Properties |
Abstract | false
Mixed | false
Used by |
Elements | value/CorrectResponse.Type, value/DefaultValue.Type
Model | N/A
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
fieldIdentifier | Identifier.Type | No | Global | Optional | -
baseType | [ Enumeration ] | No | Global | Optional | -
Source |
    <xs:complexType name="Value.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="xs:normalizedString">
                <xs:attributeGroup ref="fieldIdentifier.Value.Attr" />
                <xs:attributeGroup ref="baseType.Value.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.24 "Variable.Type" Derived Complex Type Description

The XSD description for the "Variable.Type" Derived Complex Type is given in Table 4.6.24.

Table 4.6.24 XSD description for the "Variable.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | This is a QTI expression function. This expression looks up the value of an itemVariable that has been declared in a corresponding variableDeclaration or is one of the built-in variables. The result has the base-type and cardinality declared for the variable subject to the type promotion of weighted outcomes. During outcomes processing, values taken from an individual item session can be looked up by prefixing the name of the item variable with the identifier assigned to the item in the assessmentItemRef, separated by a period character. For example, to obtain the value of the SCORE variable in the item referred to as Q01 you would use a variable instance with identifier Q01.SCORE. In adaptive tests that contain items that are allowed to be replaced (i.e. that have the withReplacement attribute set to "true"), the same item can be instantiated more than once. In order to access the outcome variable values of each instantiation, a number that denotes the instance's place in the sequence of the item's instantiation is inserted between the item variable identifier and the item variable, separated by a period character. For example, to obtain the value of the SCORE variable in the item referred to as Q01 in its second instantiation you would use a variable instance, prefixed by the instantiation sequence number, prefixed by an identifier Q01.2.SCORE. When looking up the value of a response variable it always takes the value assigned to it by the candidate's last submission. Unsubmitted responses are not available during expression evaluation. The value of an item variable taken from an item instantiated multiple times from the same assessmentItemRef (through the use of selection withReplacement) is taken from the last instance submitted if submission is simultaneous, otherwise it is undefined.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---Variable.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | variable/AnyN.Type, variable/BranchRule.Type, variable/CustomOperator.Type, variable/Equal.Type, variable/EqualRounded.Type, variable/FieldValue.Type, variable/Index.Type, variable/Inside.Type, variable/Logic0toMany.Type, variable/Logic1toMany.Type, variable/LogicPair.Type, variable/LogicSingle.Type, variable/LookupOutcomeValue.Type, variable/MathOperator.Type, variable/OutcomeIf.Type, variable/PatternMatch.Type, variable/Repeat.Type, variable/ResponseIf.Type, variable/RoundTo.Type, variable/SetValue.Type, variable/StatsOperator.Type, variable/StringMatch.Type, variable/Substring.Type, variable/TemplateConstraint.Type, variable/TemplateDefault.Type, variable/TemplateIf.Type, variable/NumericLogic1toMany.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
weightIdentifier | Identifier.Type | No | Global | Optional | -
Source |
    <xs:complexType name="Variable.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="identifier.Variable.Attr" />
                <xs:attributeGroup ref="weightIdentifier.Variable.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.25 "VariableMapping.Type" Derived Complex Type Description

The XSD description for the "VariableMapping.Type" Derived Complex Type is given in Table 4.6.25.

Table 4.6.25 XSD description for the "VariableMapping.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | Variable mappings allow outcome variables declared with the name sourceIdentifier in the corresponding item to be treated as if they were declared with the name targetIdentifier during outcomeProcessing. Use of variable mappings allows more control over the way outcomes are aggregated when using testVariables.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---VariableMapping.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | variableMapping/AssessmentItemRef.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
sourceIdentifier | Identifier.Type | No | Global | Required | -
targetIdentifier | Identifier.Type | No | Global | Required | -
Source |
    <xs:complexType name="VariableMapping.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="sourceIdentifier.VariableMapping.Attr" />
                <xs:attributeGroup ref="targetIdentifier.VariableMapping.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

### 4.6.26 "Weight.Type" Derived Complex Type Description

The XSD description for the "Weight.Type" Derived Complex Type is given in Table 4.6.26.

Table 4.6.26 XSD description for the "Weight.Type" Derived Complex Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Annotations | The contribution of an individual item score to an overall test score typically varies from test to test. The score of the item is said to be weighted. Weights are defined as part of each reference to an item (assessmentItemRef) within a test.
Diagram |
Type Hierarchy | EmptyPrimitiveType.Type ^---Weight.Type
Properties |
Abstract | false
Mixed | false
Used by |
Elements | weight/AssessmentItemRef.Type
Model | Empty
Attributes |
QName | Type | Inherited | Scope | Use | Default
--- | --- | --- | --- | --- | ---
identifier | Identifier.Type | No | Global | Required | -
value | xs:double | No | Global | Required | -
Source |
    <xs:complexType name="Weight.Type" abstract="false" mixed="false">
        <xs:simpleType>
            <xs:extension base="EmptyPrimitiveType.Type">
                <xs:attributeGroup ref="identifier.Weight.Attr" />
                <xs:attributeGroup ref="value.Weight.Attr" />
            </xs:extension>
        </xs:simpleType>
    </xs:complexType>

## 4.7 Simple Type Descriptions

The syntax and semantics for the SimpleType XSD representations is described in Appendix A1.8.

### 4.7.1 "ARIALevelInteger.Type" Simple Type Description

The XSD description for the "ARIALevelInteger.Type" SimpleType is given in Table 4.7.1.

Table 4.7.1 XSD description for the "ARIALevelInteger.Type" Simple Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | xs:integer
Facets |
MinInclusive | 1
Used by |
Attributes | aria-level/BasePromptInteraction.Type, aria-level/BaseSequence.Type, aria-level/BaseSequenceFull.Type, aria-level/BaseSequenceRIdent.Type, aria-level/BaseSequenceXBase.Type, aria-level/BaseSequenceXBaseEmpty.Type
Source |
    <xs:simpleType name="ARIALevelInteger.Type">
        <xs:restriction base="xs:integer">
            <xs:minInclusive value="1" />
        </xs:restriction>
    </xs:simpleType>

### 4.7.2 "Coords.Type" Simple Type Description

The XSD description for the "Coords.Type" SimpleType is given in Table 4.7.2.

Table 4.7.2 XSD description for the "Coords.Type" Simple Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | xs:normalizedString
Facets |
Pattern | (([0-9]+%?[,]){2}([0-9]+%?))|(([0-9]+%?[,]){3}([0-9]+%?))|(([0-9]+%?[,]){2}(([0-9]+%?[,]){2})+([0-9]+%?[,])([0-9]+%?))
Used by |
Attributes | coords/AreaMapEntry.Type, coords/AssociableHotspot.Type, coords/HotspotChoice.Type, coords/Inside.Type, coords/MediaInteraction.Type
Source |
    <xs:simpleType name="Coords.Type">
        <xs:restriction base="xs:normalizedString">
            <xs:pattern value="(([0-9]+%?[,]){2}([0-9]+%?))|(([0-9]+%?[,]){3}([0-9]+%?))|(([0-9]+%?[,]){2}(([0-9]+%?[,]){2})+([0-9]+%?[,])([0-9]+%?))" />
        </xs:restriction>
    </xs:simpleType>

### 4.7.3 "EncVariableString.Type" Simple Type Description

The XSD description for the "EncVariableString.Type" SimpleType is given in Table 4.7.3.

Table 4.7.3 XSD description for the "EncVariableString.Type" Simple Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | xs:string
Facets |
Pattern | \{[\i-[:]][\c-[:]]*\}
Used by |
Attributes | pattern/PatternMatch.Type
Source |
    <xs:simpleType name="EncVariableString.Type">
        <xs:restriction base="xs:string">
            <xs:pattern value="\{[\i-[:]][\c-[:]]*\}" />
        </xs:restriction>
    </xs:simpleType>

### 4.7.4 "Identifier.Type" Simple Type Description

The XSD description for the "Identifier.Type" SimpleType is given in Table 4.7.4.

Table 4.7.4 XSD description for the "Identifier.Type" Simple Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | xs:NCName
Used by |
Attributes | identifier/AssociableHotspot.Type, templateIdentifier/AssociableHotspot.Type, responseIdentifier/BasePromptInteraction.Type, responseIdentifier/BaseSequenceFull.Type, responseIdentifier/BaseSequenceRIdent.Type, target/BranchRule.Type, identifier/Correct.Type, class/CustomOperator.Type, identifier/Default.Type, responseIdentifier/EndAttemptInteraction.Type, stringIdentifier/ExtendedTextInteraction.Type, outcomeIdentifier/FeedbackBlock.Type, identifier/FeedbackBlock.Type, outcomeIdentifier/FeedbackInline.Type, identifier/FeedbackInline.Type, fieldIdentifier/FieldValue.Type, identifier/Gap.Type, templateIdentifier/Gap.Type, identifier/GapImg.Type, templateIdentifier/GapImg.Type, identifier/GapText.Type, templateIdentifier/GapText.Type, identifier/HotText.Type, templateIdentifier/HotText.Type, identifier/HotspotChoice.Type, templateIdentifier/HotspotChoice.Type, identifier/InlineChoice.Type, templateIdentifier/InlineChoice.Type, identifier/LookupOutcomeValue.Type, identifier/MapResponse.Type, outcomeIdentifier/ModalFeedback.Type, identifier/ModalFeedback.Type, sectionIdentifier/Number.Type, identifier/OutcomeDeclaration.Type, sectionIdentifier/OutcomeMinMax.Type, outcomeIdentifier/OutcomeMinMax.Type, weightIdentifier/OutcomeMinMax.Type, identifier/PrintedVariable.Type, templateIdentifier/RubricBlockTemplateBlock.Type, identifier/RubricBlockTemplateBlock.Type, templateIdentifier/RubricBlockTemplateInline.Type, identifier/RubricBlockTemplateInline.Type, identifier/SetValue.Type, identifier/SimpleAssociableChoice.Type, templateIdentifier/SimpleAssociableChoice.Type, identifier/SimpleChoice.Type, templateIdentifier/SimpleChoice.Type, templateIdentifier/TemplateBlock.Type, identifier/TemplateBlock.Type, outcomeIdentifier/TemplateBlockFeedbackBlock.Type, identifier/TemplateBlockFeedbackBlock.Type, identifier/TemplateDeclaration.Type, templateIdentifier/TemplateDefault.Type, templateIdentifier/TemplateInline.Type, identifier/TemplateInline.Type, outcomeIdentifier/TestFeedback.Type, identifier/TestFeedback.Type, sectionIdentifier/TestVariables.Type, variableIdentifier/TestVariables.Type, weightIdentifier/TestVariables.Type, fieldIdentifier/Value.Type, identifier/Variable.Type, weightIdentifier/Variable.Type, sourceIdentifier/VariableMapping.Type, targetIdentifier/VariableMapping.Type, identifier/Weight.Type
Source |
    <xs:simpleType name="Identifier.Type">
        <xs:restriction base="xs:NCName" />
    </xs:simpleType>

### 4.7.5 "IdentifierList.Type" Simple Type Description

The XSD description for the "IdentifierList.Type" SimpleType is given in Table 4.7.5.

Table 4.7.5 XSD description for the "IdentifierList.Type" Simple Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | xs:NCName
Used by |
Attributes | category/AssessmentItemRef.Type, matchGroup/AssociableHotspot.Type, matchGroup/Gap.Type, matchGroup/GapImg.Type, matchGroup/GapText.Type, includeCategory/Number.Type, excludeCategory/Number.Type, includeCategory/OutcomeMinMax.Type, excludeCategory/OutcomeMinMax.Type, matchGroup/SimpleAssociableChoice.Type, headers/TDH.Type, includeCategory/TestVariables.Type, excludeCategory/TestVariables.Type
Source |
    <xs:simpleType name="IdentifierList.Type">
        <xs:restriction base="xs:NCName />
    </xs:simpleType>

### 4.7.6 "IntegerList.Type" Simple Type Description

The XSD description for the "IntegerList.Type" SimpleType is given in Table 4.7.6.

Table 4.7.6 XSD description for the "IntegerList.Type" Simple Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | xs:int
Used by |
Attributes | centerPoint/PositionObjectInteraction.Type
Source |
    <xs:simpleType name="IntegerList.Type">
        <xs:restriction base="xs:int />
    </xs:simpleType>

### 4.7.7 "Length.Type" Simple Type Description

The XSD description for the "Length.Type" SimpleType is given in Table 4.7.7.

Table 4.7.7 XSD description for the "Length.Type" Simple Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | xs:string
Facets |
Pattern | [0-9]+%?
Used by |
Attributes | height/Img.Type, width/Img.Type, width/Object.Type, height/Object.Type
Source |
    <xs:simpleType name="Length.Type">
        <xs:restriction base="xs:string">
            <xs:pattern value="[0-9]+%?" />
        </xs:restriction>
    </xs:simpleType>

### 4.7.8 "MimeType.Type" Simple Type Description

The XSD description for the "MimeType.Type" SimpleType is given in Table 4.7.8.

Table 4.7.8 XSD description for the "MimeType.Type" Simple Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | xs:normalizedString
Facets |
Pattern | [\p{IsBasicLatin}-[()<>@,;:\\"/\[\]?=]]+/[\p{IsBasicLatin}-[()<>@,;:\\"/\[\]?=]]+
Used by |
Attributes | type/A.Type, type/Object.Type, type/Param.Type, type/StyleSheet.Type, type/UploadInteraction.Type
Source |
    <xs:simpleType name="MimeType.Type">
        <xs:restriction base="xs:normalizedString">
            <xs:pattern value="[\p{IsBasicLatin}-[()<>@,;:\\"/\[\]?=]]+/[\p{IsBasicLatin}-[()<>@,;:\\"/\[\]?=]]+" />
        </xs:restriction>
    </xs:simpleType>

### 4.7.9 "NonNegativeDouble.Type" Simple Type Description

The XSD description for the "NonNegativeDouble.Type" SimpleType is given in Table 4.7.9.

Table 4.7.9 XSD description for the "NonNegativeDouble.Type" Simple Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | xs:double
Facets |
MinInclusive | 0.0
Used by |
Attributes | normalMaximum/OutcomeDeclaration.Type, lowerBound/SliderInteraction.Type, upperBound/SliderInteraction.Type, step/SliderInteraction.Type, minTime/TimeLimits.Type, maxTime/TimeLimits.Type
Source |
    <xs:simpleType name="NonNegativeDouble.Type">
        <xs:restriction base="xs:double">
            <xs:minInclusive value="0.0" />
        </xs:restriction>
    </xs:simpleType>

### 4.7.10 "StringList.Type" Simple Type Description

The XSD description for the "StringList.Type" SimpleType is given in Table 4.7.10.

Table 4.7.10 XSD description for the "StringList.Type" Simple Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | xs:string
Used by |
Attributes | class/BasePromptInteraction.Type, class/BaseSequence.Type, class/BaseSequenceFull.Type, class/BaseSequenceRIdent.Type, class/BaseSequenceXBase.Type, class/BaseSequenceXBaseEmpty.Type, class/ItemBody.Type, class/PrintedVariable.Type
Source |
    <xs:simpleType name="StringList.Type">
        <xs:restriction base="xs:string />
    </xs:simpleType>

### 4.7.11 "ToleranceList.Type" Simple Type Description

The XSD description for the "ToleranceList.Type" SimpleType is given in Table 4.7.11.

Table 4.7.11 XSD description for the "ToleranceList.Type" Simple Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | xs:string | xs:double
Used by |
Attributes | tolerance/Equal.Type
Source |
    <xs:simpleType name="ToleranceList.Type">
        <xs:union>
            <xs:simpleType>
                <xs:restriction base="xs:string />
            </xs:simpleType>
            <xs:simpleType>
                <xs:restriction base="xs:double />
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

### 4.7.12 "UniqueIdentifier.Type" Simple Type Description

The XSD description for the "UniqueIdentifier.Type" SimpleType is given in Table 4.7.12.

Table 4.7.12 XSD description for the "UniqueIdentifier.Type" Simple Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | xs:ID
Used by |
Attributes | id/BasePromptInteraction.Type, id/BaseSequence.Type, id/BaseSequenceFull.Type, id/BaseSequenceRIdent.Type, id/BaseSequenceXBase.Type, id/BaseSequenceXBaseEmpty.Type, id/ItemBody.Type, id/PositionObjectStage.Type, id/PrintedVariable.Type, identifier/ResponseDeclaration.Type, id/SimpleMatchSet.Type
Source |
    <xs:simpleType name="UniqueIdentifier.Type">
        <xs:restriction base="xs:ID" />
    </xs:simpleType>

### 4.7.13 "UniqueIdentifierRef.Type" Simple Type Description

The XSD description for the "UniqueIdentifierRef.Type" SimpleType is given in Table 4.7.13.

Table 4.7.13 XSD description for the "UniqueIdentifierRef.Type" Simple Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | xs:IDREF
Used by |
Attributes | variableIdentifierRef/OutcomeDeclaration.Type, responseIdentifier/TextEntryInteraction.Type, stringIdentifier/TextEntryInteraction.Type
Source |
    <xs:simpleType name="UniqueIdentifierRef.Type">
        <xs:restriction base="xs:IDREF" />
    </xs:simpleType>

### 4.7.14 "VariableString.Type" Simple Type Description

The XSD description for the "VariableString.Type" SimpleType is given in Table 4.7.14.

Table 4.7.14 XSD description for the "VariableString.Type" Simple Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | xs:string
Facets |
Pattern | [\i-[:]][\c-[:]]*
Used by |
Attributes | min/AnyN.Type, max/AnyN.Type, figures/EqualRounded.Type, base/PrintedVariable.Type, index/PrintedVariable.Type, min/RandomFloat.Type, max/RandomFloat.Type, min/RandomInteger.Type, max/RandomInteger.Type, step/RandomInteger.Type, figures/RoundTo.Type
Source |
    <xs:simpleType name="VariableString.Type">
        <xs:restriction base="xs:string">
            <xs:pattern value="[\i-[:]][\c-[:]]*" />
        </xs:restriction>
    </xs:simpleType>

### 4.7.15 "View.Type" Simple Type Description

The XSD description for the "View.Type" SimpleType is given in Table 4.7.15.

Table 4.7.15 XSD description for the "View.Type" Simple Type.
Namespace | http://www.imsglobal.org/xsd/imsqti_v2p2
Diagram |
Type | Enumerated List
Facets |
Enumeration | author
Enumeration | candidate
Enumeration | proctor
Enumeration | scorer
Enumeration | testConstructor
Enumeration | tutor
Used by |
Attributes | view/OutcomeDeclaration.Type, view/RubricBlock.Type
Source |
    <xs:simpleType name="View.Type">
        <xs:restriction base="xs:string">
            <xs:enumeration value="author" />
            <xs:enumeration value="candidate" />
            <xs:enumeration value="proctor" />
            <xs:enumeration value="scorer" />
            <xs:enumeration value="testConstructor" />
            <xs:enumeration value="tutor" />
        </xs:restriction>
    </xs:simpleType>

toc | top

# 5. The Schematron Rules

## 5.1 Rules Imposing the Unordered Class Definition

The "Unordered" stereotype is not used and so there are no corresponding Schematron rules.

## 5.2 The Constrained Namespace Extension Rule Definitions

This is the set of schematron rules used to enforce the constraints on the naming convention for extensions to the list of XML attributes for an element.

Element Name | Scope | Naming Convention Constraint
--- | --- | ---
a | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
abbr | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
acronym | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
address | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
associableHotspot | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
associateInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
b | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
bdo | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
big | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
blockquote | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
br | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
caption | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
choiceInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
cite | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
code | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
col | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
colgroup | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
customInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
dd | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
dfn | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
div | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
dl | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
drawingInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
dt | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
em | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
endAttemptInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
extendedTextInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
feedbackBlock | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
feedbackInline | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
gap | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
gapImg | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
gapMatchInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
gapText | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
graphicAssociateInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
graphicGapMatchInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
graphicOrderInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
h1 | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
h2 | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
h3 | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
h4 | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
h5 | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
h6 | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
hotspotChoice | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
hotspotInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
hottext | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
hottextInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
hr | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
i | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
img | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
infoControl | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
inlineChoice | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
inlineChoiceInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
kbd | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
label | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
li | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
matchInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
mediaInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
object | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
ol | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
orderInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
p | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
positionObjectInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
pre | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
prompt | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
q | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
rubricBlock | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
samp | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
selectPointInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
simpleAssociableChoice | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
simpleChoice | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
sliderInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
small | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
span | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
stimulusBody | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
strong | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
sub | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
sup | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
table | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
tbody | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
td | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
templateBlock | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
templateInline | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
textEntryInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
tfoot | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
th | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
thead | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
tr | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
tt | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
ul | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
uploadInteraction | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+
var | Global Element | (data-)[a-z|A-Z|0-9|-|.|_]+

## 5.3 The Explicit Rule Definitions

This is the set of schematron rules used to enforce the features of the Information Model that are otherwise not enforced in the XSD.

### 5.3.1 RULE_SET_GENERAL_1

Objective of the Rule Set is to: "Ensure that certain expressions are NOT used for Response Processing."

RULE GENERAL 1a | Context ("//qti:assessmentItem/qti:responseProcessing")
--- | ---
Assertion 1 | Test: "count(descendant::qti:numberCorrect) = 0" Statement: "The expression numberCorrect must NOT be used in ResponseProcessing."
Assertion 2 | Test: "count(descendant::qti:numberIncorrect) = 0" Statement: "The expression numberIncorrect must NOT be used in ResponseProcessing."
Assertion 3 | Test: "count(descendant::qti:numberPresented) = 0" Statement: "The expression numberPresented must NOT be used in ResponseProcessing."
Assertion 4 | Test: "count(descendant::qti:numberResponded) = 0" Statement: "The expression numberResponded must NOT be used in ResponseProcessing."
Assertion 5 | Test: "count(descendant::qti:numberSelected) = 0" Statement: "The expression numberSelected must NOT be used in ResponseProcessing."
Assertion 6 | Test: "count(descendant::qti:outcomeMinimum) = 0" Statement: "The expression outcomeMinimum must NOT be used in ResponseProcessing."
Assertion 7 | Test: "count(descendant::qti:outcomeMaximum) = 0" Statement: "The expression outcomeMaximum must NOT be used in ResponseProcessing."
Assertion 8 | Test: "count(descendant::qti:testVariables) = 0" Statement: "The expression testVariables must NOT be used in ResponseProcessing."

### 5.3.2 RULE_SET_GENERAL_2

Objective of the Rule Set is to: "Ensure that the Item, Section, Test and TestPart identifiers are unique."

RULE GENERAL 2a | Context ("//qti:assessmentTest")
--- | ---
Assertion 1 | Test: "not(@identifier=qti:testPart/@identifier)" Statement: "The AssessmentTest and a TestPart must not have the same unique identifier."
Assertion 2 | Test: "not(@identifier=qti:testPart/descendant::qti:assessmentSection/@identifier)" Statement: "The AssessmentTest and an AssessmentSection must not have the same unique identifier."
Assertion 3 | Test: "not(@identifier=qti:testPart/qti:assessmentSectionRef/@identifier)" Statement: "The AssessmentTest and a direct child AssessmentSectionRef must not have the same unique identifier."
Assertion 4 | Test: "not(@identifier=qti:testPart/descendant::qti:assessmentSection/qti:assessmentSectionRef/@identifier)" Statement: "The AssessmentTest and a descendant AssessmentSectionRef must not have the same unique identifier."
Assertion 5 | Test: "not(@identifier=qti:testPart/descendant::qti:assessmentSection/qti:assessmentItemRef/@identifier)" Statement: "The AssessmentTest and a descendant AssessmentItemRef must not have the same unique identifier."

RULE GENERAL 2b | Context ("//qti:assessmentTest/qti:testPart")
--- | ---
Assertion 1 | Test: "not(@identifier=preceding-sibling::qti:testPart/@identifier)" Statement: "Two TestParts must not have the same unique identifier."
Assertion 2 | Test: "not(@identifier=descendant::qti:assessmentSection/@identifier)" Statement: "The TestPart and an AssessmentSection must not have the same unique identifier."
Assertion 3 | Test: "not(@identifier=qti:assessmentSectionRef/@identifier)" Statement: "The TestPart and a direct child AssessmentSectionRef must not have the same unique identifier."
Assertion 4 | Test: "not(@identifier=descendant::qti:assessmentSection/qti:assessmentSectionRef/@identifier)" Statement: "The TestPart and a descendant AssessmentSectionRef must not have the same unique identifier."
Assertion 5 | Test: "not(@identifier=descendant::qti:assessmentSection/qti:assessmentItemRef/@identifier)" Statement: "The TestPart and a descendant AssessmentItemRef must not have the same unique identifier."

RULE GENERAL 2c | Context ("//qti:assessmentTest/qti:testPart/qti:assessmentSection")
--- | ---
Assertion 1 | Test: "not(@identifier=preceding-sibling::qti:assessmentSection/@identifier)" Statement: "Two AssessmentSection children of a TestPart must not have the same unique identifier."
Assertion 2 | Test: "not(@identifier=descendant::qti:assessmentSection/@identifier)" Statement: "The AssessmentSection and a descendant AssessmentSection must not have the same unique identifier."
Assertion 3 | Test: "not(@identifier=descendant::qti:assessmentSectionRef/@identifier)" Statement: "The AssessmentSection and a descendant AssessmentSectionRef must not have the same unique identifier."
Assertion 4 | Test: "not(@identifier=descendant::qti:assessmentItemRef/@identifier)" Statement: "The AssessmentSection and a descendant AssessmentItemRef must not have the same unique identifier."

### 5.3.3 RULE_SET_INTERACTION_01

Objective of the Rule Set is to: "Enforce the correct use of the TextEntryInteraction attributes."

RULE INTERACTION 1a | Context ("//qti:textEntryInteraction")
--- | ---
Assertion 1 | Test: "not(@stringIdentifier=@responseIdentifier)" Statement: "The StringIdentifier and ResponseIdentifier attribute values must not be the same."

RULE INTERACTION 1b | Context ("//qti:textEntryInteraction[@responseIdentifier=//qti:responseDeclaration/@identifier]")
--- | ---
Assertion 1 | Test: "//qti:responseDeclaration[@baseType='string'] or //qti:responseDeclaration[@baseType='float'] or //qti:responseDeclaration[@baseType='integer']" Statement: "The baseType must have a value of either string, float or integer."

### 5.3.4 RULE_SET_INTERACTION_02

Objective of the Rule Set is to: "Enforce the correct use of the ChoiceInteraction attributes."

RULE INTERACTION 2a | Context ("//qti:choiceInteraction")
--- | ---
Assertion 1 | Test: "not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))" Statement: "The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value."

### 5.3.5 RULE_SET_INTERACTION_03

Objective of the Rule Set is to: "Enforce the correct use of the ExtendedTextInteraction attributes."

RULE INTERACTION 3a | Context ("//qti:extendedTextInteraction")
--- | ---
Assertion 1 | Test: "not(@stringIdentifier=@responseIdentifier)" Statement: "The StringIdentifier and ResponseIdentifier attribute values must not be the same."

### 5.3.6 RULE_SET_INTERACTION_04

Objective of the Rule Set is to: "Enforce the correct use of the HotspotInteraction attributes."

RULE INTERACTION 4a | Context ("//qti:hotspotInteraction")
--- | ---
Assertion 1 | Test: "not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))" Statement: "The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value."

### 5.3.7 RULE_SET_INTERACTION_05

Objective of the Rule Set is to: "Enforce the correct use of the GraphicOrderInteraction attributes."

RULE INTERACTION 5a | Context ("//qti:graphicOrderInteraction")
--- | ---
Assertion 1 | Test: "not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))" Statement: "The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value."

### 5.3.8 RULE_SET_INTERACTION_06

Objective of the Rule Set is to: "Enforce the correct use of the PositionObjectInteraction attributes."

RULE INTERACTION 6a | Context ("//qti:positionObjectInteraction")
--- | ---
Assertion 1 | Test: "not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))" Statement: "The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value."

### 5.3.9 RULE_SET_INTERACTION_07

Objective of the Rule Set is to: "Enforce the correct use of the SelectPointInteraction attributes."

RULE INTERACTION 7a | Context ("//qti:selectPointInteraction")
--- | ---
Assertion 1 | Test: "not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))" Statement: "The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value."

### 5.3.10 RULE_SET_INTERACTION_08

Objective of the Rule Set is to: "Enforce the correct use of the OrderInteraction attributes."

RULE INTERACTION 8a | Context ("//qti:orderInteraction")
--- | ---
Assertion 1 | Test: "not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))" Statement: "The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value."

### 5.3.11 RULE_SET_INTERACTION_09

Objective of the Rule Set is to: "Enforce the correct use of the HotTextInteraction attributes."

RULE INTERACTION 9a | Context ("//qti:hottextInteraction")
--- | ---
Assertion 1 | Test: "not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))" Statement: "The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value."

### 5.3.12 RULE_SET_INTERACTION_10

Objective of the Rule Set is to: "Enforce the correct use of the GraphicAssociateInteraction attributes."

RULE INTERACTION 10a | Context ("//qti:graphicAssociateInteraction")
--- | ---
Assertion 1 | Test: "not(not(number(@maxAssociations)=0) and number(@maxAssociations) < number(@minAssociations))" Statement: "The MaxAssociations attribute value, provided it is not 0, must not be less than the MinAssociations value."

### 5.3.13 RULE_SET_INTERACTION_11

Objective of the Rule Set is to: "Enforce the correct use of the MatchInteraction attributes."

RULE INTERACTION 11a | Context ("//qti:matchInteraction")
--- | ---
Assertion 1 | Test: "not(not(number(@maxAssociations)=0) and number(@maxAssociations) < number(@minAssociations))" Statement: "The MaxAssociations attribute value, provided it is not 0, must not be less than the MinAssociations value."

### 5.3.14 RULE_SET_INTERACTION_12

Objective of the Rule Set is to: "Enforce the correct use of the AssociateInteraction attributes."

RULE INTERACTION 12a | Context ("//qti:associateInteraction")
--- | ---
Assertion 1 | Test: "not(not(number(@maxAssociations)=0) and number(@maxAssociations) < number(@minAssociations))" Statement: "The MaxAssociations attribute value, provided it is not 0, must not be less than the MinAssociations value."

### 5.3.15 RULE_SET_INTERACTION_13

Objective of the Rule Set is to: "Enforce the correct use of the MediaInteraction attributes."

RULE INTERACTION 13a | Context ("//qti:mediaInteraction")
--- | ---
Assertion 1 | Test: "not(number(@maxPlays) < number(@minPlays))" Statement: "The MaxPlays attribute value must not be less than the MinPlays value."

### 5.3.16 RULE_SET_INTERACTION_14

Objective of the Rule Set is to: "Enforce the correct use of the SliderInteraction attributes."

RULE INTERACTION 14a | Context ("//qti:sliderInteraction")
--- | ---
Assertion 1 | Test: "not(number(@upperBound) < number(@lowerBound))" Statement: "The UpperBound attribute value must not be less than the LowerBound value."

### 5.3.17 RULE_SET_INTERACTION_15

Objective of the Rule Set is to: "Enforce the correct use of the DrawingInteraction attributes."

RULE INTERACTION 15a | Context ("//qti:drawingInteraction")
--- | ---
Assertion 1 | Test: "//qti:responseDeclaration[@baseType='file']" Statement: "The baseType must have a value of file."

### 5.3.18 RULE_SET_INTERACTION_16

Objective of the Rule Set is to: "Enforce the correct use of the UploadInteraction attributes."

RULE INTERACTION 16a | Context ("//qti:uploadInteraction")
--- | ---
Assertion 1 | Test: "//qti:responseDeclaration[@baseType='file']" Statement: "The baseType must have a value of file."

### 5.3.19 RULE_SET_INTERACTION_17

Objective of the Rule Set is to: "Enforce the correct use of the EndAttemptInteraction attributes."

RULE INTERACTION 17a | Context ("//qti:endAttemptInteraction")
--- | ---
Assertion 1 | Test: "//qti:responseDeclaration[@baseType='boolean']" Statement: "The baseType must have a value of boolean."

### 5.3.20 RULE_SET_INTERACTION_18

Objective of the Rule Set is to: "Enforce the correct use of the GapMatchInteraction attributes."

RULE INTERACTION 18a | Context ("//qti:gapMatchInteraction")
--- | ---
Assertion 1 | Test: "//qti:responseDeclaration[@baseType='directedPair']" Statement: "The baseType must have a value of directedPair."
Assertion 2 | Test: "not(not(number(@maxAssociations)=0) and number(@maxAssociations) < number(@minAssociations))" Statement: "The MaxAssociations attribute value, provided it is not 0, must not be less than the MinAssociations value."

### 5.3.21 RULE_SET_INTERACTION_19

Objective of the Rule Set is to: "Enforce the correct use of the GraphicGapMatchInteraction attributes."

RULE INTERACTION 19a | Context ("//qti:graphicGapMatchInteraction")
--- | ---
Assertion 1 | Test: "//qti:responseDeclaration[@baseType='directedPair']" Statement: "The baseType must have a value of directedPair."

### 5.3.22 RULE_SET_INTERACTION-RELATED_1

Objective of the Rule Set is to: "Enforce the correct use of the GapText attributes."

RULE INTERACTION-RELATED 1a | Context ("//qti:gapText")
--- | ---
Assertion 1 | Test: "not(not(number(@matchMax)=0) and number(@matchMax) < number(@matchMin))" Statement: "The MatchMax attribute value, provided it is not 0, must not be less than the MatchMin value."

### 5.3.23 RULE_SET_INTERACTION-RELATED_2

Objective of the Rule Set is to: "Enforce the correct use of the GapImg attributes."

RULE INTERACTION-RELATED 2a | Context ("//qti:gapImg")
--- | ---
Assertion 1 | Test: "not(not(number(@matchMax)=0) and number(@matchMax) < number(@matchMin))" Statement: "The MatchMax attribute value, provided it is not 0, must not be less than the MatchMin value."

### 5.3.24 RULE_SET_INTERACTION-RELATED_3

Objective of the Rule Set is to: "Enforce the correct use of the AssociableHotspot attributes."

RULE INTERACTION-RELATED 3a | Context ("//qti:associableHotspot")
--- | ---
Assertion 1 | Test: "not(not(number(@matchMax)=0) and number(@matchMax) < number(@matchMin))" Statement: "The MatchMax attribute value, provided it is not 0, must not be less than the MatchMin value."

### 5.3.25 RULE_SET_INTERACTION-RELATED_4

Objective of the Rule Set is to: "Enforce the correct use of the SimpleAssociableChoice attributes."

RULE INTERACTION-RELATED 4a | Context ("//qti:simpleAssociableChoice")
--- | ---
Assertion 1 | Test: "not(not(number(@matchMax)=0) and number(@matchMax) < number(@matchMin))" Statement: "The MatchMax attribute value, provided it is not 0, must not be less than the MatchMin value."

### 5.3.26 RULE_SET_SPECIFIC_CLASS_1

Objective of the Rule Set is to: "Enforce the correct use of the OutcomeDeclaration attributes."

RULE SPECIFIC CLASS 1a | Context ("//qti:outcomeDeclaration")
--- | ---
Assertion 1 | Test: "not(number(@masteryValue) < number(@normalMinimum))" Statement: "The MasteryValue attribute value must not be less than the NormalMinimum value."
Assertion 2 | Test: "not(number(@masteryValue) > number(@normalMaximum))" Statement: "The MasteryValue attribute value must not be greater than the NormalMaximum value."

### 5.3.27 RULE_SET_SPECIFIC_CLASS_2

Objective of the Rule Set is to: "Enforce the correct use of the TimeLimits attributes."

RULE SPECIFIC CLASS 2a | Context ("//qti:timeLimits")
--- | ---
Assertion 1 | Test: "not(number(@maxTime) < number(@minTime))" Statement: "The MaxTime attribute value must not be less than the MinTime value."

toc | top

# 6. Extending the XSD

This specification permits extensions at a very limited number of places within the data model. Extensions are permited at:

- Section Selection - selecting the subset of section/items for potential presentation;
- Section Ordering - determining the order of presentation of the selected section/items;
- Custom Interaction - the mechanism to extend the range of supported interactions;
- Custom Operator - the mechanism to extend the range of operator expressions.
- 'data-*' - data attribute extension on HTML tags and the QTI interaction tags.

Extensions at any other point in the data model may cause unpredictable behavior.

## 6.1 Section Selection ComplexType Extension

Extension of the 'Selection' class is used to enable the implementation of Item/Section selection algorithms and techniques. This element can be extended by: i) creating new XML children elements (these must not be in QTI namespace and inclusion of a validation XSD reference is not required); and ii) creating new XML attributes (these must not be in the QTI namespace and inclusion of a QTI XSD reference is required).

## 6.2 Section Ordering ComplexType Extension

Extension of the 'Ordering' class is used to enable the implementation of Item/Section ordering algorithms and techniques for the delivery of the selected Sections/Items. This element can be extended by: i) creating new XML children elements (these must not be in QTI namespace and inclusion of a validation XSD reference is not required); and ii) creating new XML attributes (these must not be in the QTI namespace and inclusion of a QTI XSD reference is required).

## 6.3 Custom Interaction ComplexType Extension

The 'CustomInteraction' class is used to provide a mechanism for the inclusion of Item interactions that otherwise cannot be supported using the available set of interactions. This element can be extended by: i) creating new XML children elements (these may be in QTI namespace and inclusion of a validation XSD reference is not required); and ii) creating new XML attributes (these may be in the QTI namespace and inclusion of a QTI XSD reference is not required).

The 'CustomInteraction' extension mechanism should be used along with the Portable Custom Interaction specification [PCI, 14]. The PCI specification defines how the custom interactions should be defined so that there are standard ways in which data can be passed to, and received from, the custom interaction. This turns an interaction into service with a defined API.

## 6.4 Custom Operator ComplexType Extension

The 'CustomOperator' class provides a mechanism for defining new QTI expression functions to support response and outcomes processing. This element can be extended by: i) creating new XML children elements (these may be in QTI namespace and inclusion of a validation XSD reference is not required); and ii) creating new XML attributes (these may be in the QTI namespace and inclusion of a QTI XSD reference is not required).

## 6.5 The 'data-*' Attribute

The 'data-*' attribute is provided to enable new attributes to be added to the HTML and QTI interaction elements. Each new attribute must start with the characters 'data-' and so a naming convention should be established when creating the new attribute names. Note that these new attributes are in the same namespace as the QTI ASI XML elements and XML attributes.

toc | top

# 7. ASI Packaging

IMS Content Packaging v1.2 [CP, 12] should be used when transferring assessmentItems, assessmentSections, assessmentTests, etc. between systems. To avoid confusion between the identically named item in the Content Packaging specification and, more generally, to make it clear when terms in this document are referring to elements in the content packaging model, all references to these elements will be qualified with the prefix "cp:". This is purely a typographical convention and does not indicate the use of XML namespacing syntax.

In preparing this specification, every effort has been taken to ensure that no extensions to the existing Content Packaging data model are defined and, furthermore, features of that specification are used in the way originally intended. The goal is to enable the use of content packages containing assessment objects with the existing base of tools that support IMS Content Packaging. However, a Profile of IMS CP has been created for native exchange of QTI packages. The features of the profile are:

- The XSD is renamed 'qtiv2p2_imscpv1p2_v1p0.xsd';
- The XSD is located in the directory 'http://www.imsglobal.org/xsd/qti/qtiv2p2/';
- The 'cp:schema' element value in the manifest metadata must be 'QTIv2.2 Package' or 'QTIv2.2 Item Bank Package' or 'QTIv2.2 Object Bank Package';
- The 'cp:schemaversion' element value in the manifest metadata must be '1.0.0';
- The 'cp:organization' structures are prohibited in the manifest;
- The 'cp:item' structures are prohibited in the manifest;
- The 'cp:manifest' child structures are prohibited in the manifest;
- All of the extension points have be prohibited;
- Support for LOM Metadata, Curriculum Standards Metadata and QTI-specific Metadata has been added to the manifest-level metadata;
- Support for LOM Metadata, Curriculum Standards Metadata and QTI-specific Metadata has been added to the resource-level metadata;
- The vocabulary for the resource type attribute is enumerated as 'imsqti_test_xmlv2p2', 'imsqti_section_xmlv2p2', 'imsqti_item_xmlv2p2', 'imsqti_stimulus_xmlv2p2', 'imsqti_outcomes_xmlv2p2', 'imsqti_rptemplate_xmlv2p2', 'imsqti_fragment_xmlv2p2' and 'webcontent'.

Version 1 of this specification defined an objectbank as a collection of items and sections. In this version of the specification, this concept has been extended to include assessment tests. A collection of assessment objects in a content package is therefore considered to be an objectbank and the metadata associated with the package as a whole is interpreted as the metadata describing the objectbank. In other words, objectbanks are bound to content packages for interchange. Note that an item pool is simply treated as a special case of an objectbank. Packaged items may still be referred to individually in an associated learning design or set of sequencing rules. This type of integration is discussed later in this document.

The QTI content packaging XSD is available at: http://www.imsglobal.org/xsd/qti/qtiv2p2/qtiv2p2_imscpv1p2_v1p0.xsd.

## 7.1 Packaging Items

An IMS content package is a logical directory containing the content files and a special manifest file which describes them. An assessmentItem is represented in a content package by an XML file that satisfies the XML binding described by this specification. For example, in the case of a single item the content package will contain:

- The manifest (an XML file called 'imsmanifest.xml');
- The item (a QTI XML file);
- Any auxiliary files (typically images or media files) required by the item.

The manifest file must contain a separate cp:resource describing each item. The cp:type of the cp:resource must be 'imsqti_item_xmlv2p2'. The cp:resource in turn must contain a cp:file representing the item's XML file. The cp:resource should also contain a cp:file for each of the item's auxiliary files, however, if an auxiliary file is shared amongst several items (whether or not these other items are contained in the same content package) the auxiliary file may be represented by a separate cp:resource. In this case, the item's cp:resource must contain a cp:dependency to the cp:resource representing the auxiliary file.

Metadata may be associated with an item by including it in the cp:resource. In the case of a content package that contains only one item the metadata, if given, must be included in the cp:resource and not the enclosing cp:manifest. Metadata associated with the cp:manifest itself is reserved for describing the package (objectbank), not the package's contents. The metadata associated with an item should conform to the model and XML binding for item metadata described elsewhere in this specification.

The use of a cp:organization to organize QTI items contained in a content package is reserved, except where the cp:organization is the basis for a set of rules described with the simple sequencing specification. Systems dealing only with the interchange of assessment objects conforming to this specification should ignore organizations when importing content packages.

Auxiliary files that are referred to using relative URIs in an img or object must be included in the content package. These files may be placed in the top level directory or in a sub-directory of the content package if preferred.

## 7.2 Packaging Sections

When a package not only contains items, but also one or more Sections described in their own XML instances, the manifest file must contain a cp:resource describing each of the assessmentSections. The cp:type of the cp:resource for the section must be 'imsqti_section_xmlv2p2'. The cp:resource in turn must contain a cp:file representing the section's XML file. The cp:resource should also contain a cp:file for each of the section's auxiliary files. A package can contain multiple sections, each represented by its own cp:resource.

As with packages containing only items, the Items should be represented by a seperate cp:resource. The relationship between items and section(s) should be represented by a cp:dependency for each individual item in the cp:resource of the section. Similarly, sections that contain separately referenced child sections should also use the cp:dependency structure.

If an auxiliary file is shared with other sections or even other items (whether or not these are contained in the same content package) the auxiliary file may be represented by a separate cp:resource. In this case, the section's cp:resource must contain a cp:dependency to the cp:resource representing the auxiliary file.

Metadata specific to the test may be associated with a test by including it in the cp:resource. If given, this metadata must be included in the cp:resource and not the enclosing cp:manifest. Metadata associated with the cp:manifest itself is reserved for describing the package, not the package's contents.

The use of a cp:organization to organize QTI Tests contained in a content package is reserved for future use, and so is prohibited in the current QTI packaging.

Auxiliary files that are referred to using relative URIs in an 'img' or 'object' must be included in the content package. These files may be placed in the top level directory or in a sub-directory of the content package if preferred.

## 7.3 Packaging Tests

When a package not only contains items, but also a Test, the manifest file must contain a cp:resource describing the assessmentTest. The cp:type of the cp:resource for the test must be 'imsqti_test_xmlv2p2'. The cp:resource in turn must contain a cp:file representing the test's XML file. The cp:resource should also contain a cp:file for each of the test's auxiliary files. A package can contain multiple tests, each represented by its own cp:resource.

As with packages containing only items, the Items should be represented by a seperate cp:resource. The relationship between items and test should be represented by a cp:dependency for each individual item in the cp:resource of the test.

If an auxiliary file is shared with other tests or even other testitems (whether or not these are contained in the same content package) the auxiliary file may be represented by a separate cp:resource. In this case, the tests's cp:resource must contain a cp:dependency to the cp:resource representing the auxiliary file.

Metadata specific to the test may be associated with a test by including it in the cp:resource. If given, this metadata must be included in the cp:resource and not the enclosing cp:manifest. Metadata associated with the cp:manifest itself is reserved for describing the package, not the package's contents.

The use of a cp:organization to organize QTI Tests contained in a content package is reserved for future use, except where the cp:organization is the basis for a set of rules described with the simple sequencing specification.

Auxiliary files that are referred to using relative URIs in an 'img' or 'object' must be included in the content package. These files may be placed in the top level directory or in a sub-directory of the content package if preferred.

## 7.4 Packaging Item and Test Fragments

An item fragment is part of an item that is managed independently of the items that depend on it. Similarly, a test fragment is part of a test that is managed independently of the tests that depend on it. The cp:type of the cp:resource for the test must be imsqti_fragment_xmlv2p2. The cp:resource in turn must contain a cp:file representing the fragments XML file. A package can contain multiple fragments, each represented by its own cp:resource.

The relationship between items and fragments should be represented by a cp:dependency for the fragment(s) in the cp:resource of the item that uses the template.

## 7.5 Packaging Assessment Stimulii

A key addition in QTIv2.2 is the support for the exchange of content that is common to several Items i.e. not just the same image, etc. but substantial content that must have its own creation workflow and is intrinsic to the set of test Items. Each assessment stimulus should be represented by a seperate cp:resource. The relationship between items and the stimulus should be represented by a cp:dependency for each individual stimulus in the cp:resource of the item.

Auxiliary files used by a stimulus that are referred to using relative URIs in an img or object must be included in the content package. These files may be placed in the top level directory or in a sub-directory of the content package if preferred.

## 7.6 Packaging Response Processing Templates

Usually there is no real need to include the standard templates in a content package, but they can be included in the package containing items. The package can also contain custom response processing templates shared by the items in the package. The cp:type of the cp:resource for the test must be imsqti_rptemplate_xmlv2p2. The cp:resource in turn must contain a cp:file representing the template's XML file. A package can contain multiple templates, each represented by its own cp:resource.

The relationship between items and templates should be represented by a cp:dependency for the template in the cp:resource of the item that uses the template.

## 7.7 Packaging Outcome Declarations

There are circumstances when the outcome variables need to be defined separately from the rest of an Item or Test i.e. when the outcomes themselves need to be associated with the set of learning standards which they address. The outcomes declaration is defined in its own cp:resource, with the type of 'imsqti_outcomes_xmlv2p2', and the associated learning standards annotations made within the metadata for the resource. The cp:dependency in the relevant cp:resource for the item(s) is then used to link the outcome with the item(s).

## 7.8 Metadata for the QTI Package

In QTIv2.2, the QTI-specific metadata [QTI, 17b] has been brought into line with the IEEE LOM in accordance with the IMS Metadata Best Practice and Implementation Guide for [IMD, 06]. The IEEE LOM standard defines a set of metadata elements that can be used to describe learning resources, but does not describe assessment resources in sufficient detail. The application profile provided in this document therefore extends the IEEE LOM to meet the specific needs of QTI developers wishing to associate metadata with items (as defined by the accompanying Item Information Model).

The QTI Metadata [QTI, 17b] document describes a profile of LOM suitable for use with assessment items and tests. This document will be of particular interest to developers and managers of item banks and other content repositories, and to those who construct assessments from item banks. Metadata may be associated with an item, section, test, etc. by including it in the cp:resource. In the case of a content package that contains only one item the metadata, if given, must be included in the cp:resource and not the enclosing cp:manifest. Metadata associated with the cp:manifest itself is reserved for describing the package, not the package's contents.

One of the goals during the development of this specification was to allow support by as large a number of existing tools as possible. It was also considered important to provide support for use of both the QTI specific metadata in combination with the currently widely used IEEE LOM binding. Both of these have been taken into account while developing the integration method.

### 7.8.1 Manifest and Resource Level Metadata

The manifest and resource level metadata is included using XML based upon the IMS binding of IEEE LOM. At the manifest level the metadata is for the PACKAGE as a whole. Metadata specific to an Item, Section, Test, etc. is described as part of the RESOURCE. The QTI-specific metadata [QTI, 17b] is defined at the resource level.

The current version of the IMS Content Packaging [CP, 12] specification is version 1.2. When metadata is to be included, the XML instance must include the following namepsaces and schema locations:

    <manifest
         xmlns="http://www.imsglobal.org/xsd/imscp_v1p1"
         xmlns:lom="http://ltsc.ieee.org/xsd/LOM"
         xmlns:qtim="http://www.imsglobal.org/xsd/imsqti_metadata_v2p2"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://www.imsglobal.org/xsd/imscp_v1p1 http://www.imsglobal.org/xsd/qti/qtiv2p2/qtiv2p2_imscpv1p2_v1p0.xsd
                             http://ltsc.ieee.org/xsd/LOM http://www.imsglobal.org/xsd/imsmd_loose_v1p3p2.xsd
                             http://www.imsglobal.org/xsd/imsqti_metadata_v2p2 http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqti_metadata_v2p2.xsd"
         identifier="MANIFEST-QTI-1">

At the manifest level the metadata is defined as shown below:

    <metadata>
        <schema>QTIv2.2 Package</schema>
        <schemaversion>1.0.0</schemaversion>
        <lom xmlns="http://ltsc.ieee.org/xsd/LOM">
          ...
        </lom>
    </metadata>

At the resource level the metadata is defined as shown below:

    <resource type="imsqti_item_xmlv2p2" identifier="Resource1" href="Items/Item_VE_IP_01/qtiv2p2_EntryTest_VE_IP_01.xml">
          <metadata>
            <lom xmlns="http://ltsc.ieee.org/xsd/LOM">
              <general>
                <identifier>
                  <entry>VE_IP_01</entry>
                </identifier>
              </general>
              <qtiMetadata xmlns="http://www.imsglobal.org/xsd/imsqti_metadata_v2p2">
                <interactionType>choiceInteraction</interactionType>
                <feedbackType>none</feedbackType>
                <solutionAvailable>false</solutionAvailable>
              </qtiMetadata>
            </lom>
          </metadata>
          <file href="Items/Item_VE_IP_01/qtiv2p2_EntryTest_VE_IP_01.xml" />
    </resource>

### 7.8.2 Curriculum Standards Metadata

Learning Standards annotations for the resources and the manifest as a whole is supported using the IMS Curriculum Standards Metadata (CSM) approach developed as part of IMS Common Cartridge [CSM, 12]. These annotations are added in the corresponding metadata structures for the manifest and resource i.e. in the same manner as for the LOM entries. When using CSM the following XML should be added to the manifest element:

    <manifest
         xmlns="http://www.imsglobal.org/xsd/imscp_v1p1"
         ...
         xmlns:csm="http://www.imsglobal.org/xsd/qti/qtiv2p2/imscsmd_v1p0"
         ...
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://www.imsglobal.org/xsd/imscp_v1p1 http://www.imsglobal.org/xsd/qti/qtiv2p2/qtiv2p2_imscpv1p2_v1p0.xsd
                             ...
                             http://www.imsglobal.org/xsd/http://www.imsglobal.org/xsd/qti/qtiv2p2/imscsmd_v1p0 http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqti_csm_v2p2.xsd">

At the resource level an example of the usage of the CSM is shown below:

    <resource type="imsqti_item_xmlv2p2" identifier="Resource1" href="Items/Item_VE_IP_01/qtiv2p2_EntryTest_VE_IP_01.xml">
          <metadata>
             <qtiMetadata xmlns="http://www.imsglobal.org/xsd/imsqti_metadata_v2p2">
                ...
             </qtiMetadata>
             <curriculumStandardsMetadataSet xmlns="http://www.imsglobal.org/xsd/qti/qtiv2p2/imscsmd_v1p0" resourceLabel="QTI-Item" resourcePartId="ITEM-001">
                <curriculumStandardsMetadata providerId="ASN">
                    <setOfGUIDs region="Texas" version="1.0">
                        <labelledGUID>
                            <label>ASN PURL for Texas on subject "..." and level "..".</label>
                            <GUID>http://purl_org/ims/cck12ls/usa_texas_LA_4_2_1_6</GUID>
                        </labelledGUID>
                        ....
                    </setOfGUIDs>
                </curriculumStandardsMetadata>
             </curriculumStandardsMetadataSet>
             <lom xmlns="http://ltsc.ieee.org/xsd/LOM">
                 <general>
                 ...
                </general>

             </lom>
          </metadata>
          <file href="Items/Item_VE_IP_01/qtiv2p2_EntryTest_VE_IP_01.xml" />
    </resource>

toc | top

# Appendix A XSD Binding Terms

## A1 XSD Binding Description Terms

### A1.1 UML/XSD Attribute Mapping Table Definition

Table A1.1 provides the key to the descriptions of UML to XSD attribute mapping tables.

Table A1.1 The key to the descriptions of UML to XSD attribute mapping tables.
Feature | Definition and Usage
--- | ---
Attribute Name | The name of the attribute (these are the attributes listed in the class identified by the « Roots » stereotype).
UML Class | The name of the class, the type of the attribute, in the UML diagrams (each class will have an associated stereotype label to denote its modelling interpretation). If the information model description is contained within the same document, this value is hot-linked to that description.
XSD Name | The equivalent name of the UML attribute name in the XSD i.e. the XML element name.
XSD Type | The XSD type - this will always be "Element".
XSD Data Type | The data-type in the context of the XSD. This is hot-linked to the corresponding description table in the binding.

toc | top

### A1.2 UML/XSD Class Mapping Table Definition

Table A1.2 provides the key to the descriptions of UML to XSD class mapping tables. This table shows the relationship between the two modelling components:

- Information model aspects - the name/type/multiplicity of the artefact in the information model
- Binding aspects - the corresponding name/type in the XSD binding

Table A1.2 The key to the descriptions of UML to XSD class mapping tables.
Feature | Definition and Usage
--- | ---
Name | The name of the UML class and the associated set of attributes and characteristics. The first row is used to describe the UML class. Camel-case is used for the attribute and characteristic names.
UML Artefact | The UML Class will be denoted as "Root", "Core" or "Derived" depending on the nature of the class. The list of attributes (mapped to XML elements) and characteristics (mapped to XML attributes) will be identified as either "Attributes" or "Characteristics".
Data Type | The data-type has several permitted values: PT:... - denotes a primitive type with "..." replaced by the actual primitiveType name DT:... (PT:...) - denotes a derived type of name "..." derived from the primitive type "PT:..." [Enumeration(...)] - denotes an enumeration of name "..." [List(...)] - denotes a list of the name "..." [Union(...)] - denotes a union of one or more data-types with the name "..." [Imported(...)] - denotes a class with the name "..." has been imported from another specification "Container[...]" - denotes a class of stereotype "..."
Multiplicity | The multiplicity of the child attribute/characteristic. The value for the Class itself is "-N/A-". The multiplicity values are: "0..1" [optional; restricted] "0..*" [optional; unrestricted] "1" [mandatory; restricted] "1..*" [mandatory; unrestricted] The multiplicity will also indicate when groups of elements have variable multiplicity. In the case when a selection between groups of elements is used then this is denoted by "XOR" being displayed above the multiplicity for each of the grouped elements. Alongside the XOR is the multiplicity of the group as a whole.
XSD Name | This is the equivalent name of the UML artefact in the XSD. In the case of a "Derived" class the UML attribute may be used to define constraints on the primitiveType and so may not have visibility in an instance. In this case the name entry will be "[ No XML instance visibility ]".
XSD Type | The XSD data-type. For the Class this will have either the value "ComplexType" or "SimpleType" or the statement "There is no equivalent derived complexType. This is a logical class that is used to identify a namespace constraint.". For the attributes the value is either "Element (Global)" or "Element (Local)" depending on the scoping. For the characteristics the value is either "Attribute (Global)" or "Attribute (Local)" depending on the scoping. In the case of a "Derived" class the UML attribute may be used to define constraints on the primitiveType and so may not have visibility in an instance. In this case the type entry will denote the type of restriction i.e. MinLength, MaxLength, WhiteSpace, MinInclusive, MaxInclusive and Pattern.

toc | top

### A1.3 UML/XSD Enumerated and Enumerated List Class Mapping Table Definition

Table A1.3 provides the key to the descriptions of UML to XSD enumerated and enumerated list class mapping tables.

Table A1.3 The key to the descriptions of UML to XSD enumerated and enumerated list class mapping tables.
Feature | Definition and Usage
--- | ---
Enumeration Class Name or Enumeration List Class Name | The name of the enumeration class or the enumeration list class.
Description | The list of permitted tokens for the enumeration or list. Each value is separated by the "|" character.

toc | top

### A1.4 UML/XSD List and Union Class Mapping Table Definition

Table A1.4 provides the key to the descriptions of UML to XSD list and union class mapping tables.

Table A1.4 The key to the descriptions of UML to XSD list and union class mapping tables.
Feature | Definition and Usage
--- | ---
List/Union Class Name | The name of the list or union class.
Description | The list of primitive types and simple derived types from which the list of values can be derived. Links to the definition of the description of the primitive and derived types provided elsewhere in the UML/XSD mapping are supplied.

toc | top

### A1.5 UML/XSD Primitive Types Mapping Table Definition

Table A1.5 provides the key to the descriptions of UML to XSD primitive-type mapping tables.

Table A1.5 The key to the descriptions of UML to XSD primitive mapping tables.
Feature | Definition and Usage
--- | ---
Primitive Type Name | The name of the primitve type used in the specification. Links to the definition of the primitive types, if provided elsewhere in the document, are supplied.
Description | The equivalent XML base data type that is used in the XSD binding.

toc | top

### A1.6 XSD Description for an Element

Table A1.6 provides the key to the descriptions of XSD element tables.

Table A1.6 The key to the descriptions of XSD element tables.
Feature | Definition and Usage
--- | ---
Namespace | The namespace for the XSD element.
Diagram | This diagram consists of three types of linked blocks. Straight link lines denote XML sequence whereas diagonal lines denote XML selection/unordered. The block forms are: Element Blocks - blue and grey shaded rounded rectangles containing the name of the element, its data-type, any default value and the multiplicity (denoted by a circle containing either the symbol "?", "1", "*", "+" or "U" representing optional, required, optionally many, at least one or unordered respectively. Unordered makes use of an associated set of Schematron Rules). If the element inherits features from another class then it contains a purple shadow that names the complexType from which the elements/attributes are inherited; Attribute Blocks - orange and grey shaded rounded rectangles containing the name of the attribute, its data-type, any default value and the multiplicity (denoted by a circle containing either the symbol "?" or "1" representing option or required respectively); Attribute Group Blocks - orange shaded rounded rectangle containing the name of the attribute group; Purple Surrounds - a surround on the attributes block denotes inherited attributes and a surround on the element block denotes inherited elements.
Type | The data-type for the element. This will possible entries are: The name of the primitiveType data-type Statement of an enumeration The import class name written as [Import (...)] The actual data-type with a link to the corresponding declaration.
Type Hierachy | The identification of the superclass upon which this type is based (the superclass is shown on the top line). This indicates the source of the inherited set of XML elements and attributes for the element.
Properties | The set of properties for the element including (these will not be shown for Global elements): Content - the type of content i.e "simple" or "complex" Mixed - whether or not the content is a mixture of content/element {true, false} MinOccurs - the minimum number of occurences MaxOccurs - the maximum number of occurences
Used by | The features in the XSD that make use of this global or root element. These features are listed under the heading "ComplexTypes". Each of the entries is linked to its formal description table.
Facets | The permitted set of facets for the content i.e. the ways in which the content is further constrained. This row is only present if there are associated facets. The set of permitted facets are: Enumeration - a permitted value MinLength - the required minimum number of characters MaxLength - the maximum number of characters WhiteSpace - default handling of white-space i.e. preserve or replace or collapse MinInclusive - the permitted minimum value (inclusive) MaxInclusive - the permitted maximum value (inclusive) Pattern - the permitted character set defined as a regular expression
Model | The set of child elements. This is an ordered list of elements (as per the sequence in the data-type complexType) and accompanied by their multiplicity. Links to the corresponding declarations are supplied. In the case where the type is an enumeration or primitiveType then the value is "N/A". The value may also be "Empty" to indicate that no children are permitted. If the element is imported i.e. from an external XSD, only the URL for that XSD will be given.
Attributes | The set of global and local XML attributes for this complexType (if the element is imported i.e. from an external XSD, only the URL for that XSD will be given). Links are made to the associated tabular definitions. Each attribute is described by: QName - the name with a link to the corresponding table description Type - the data-type Inherited - Yes/No statement of whether or not this attribute is inherited from a base complexType Scope - the scope defined as either "Local" or "Global" Use - the multiplicity as either "Required" or "Optional" Default - the default value or a "-" if there is none
Schematron Rules | The set of schematron rules to be applied for the element grouped as: Unordered Class - the Schematron Rules that enforce the "Unordered" stereotype; NS Constraint - the Schematron Rules that enforce the constraints on extension XML attributes; Explicit Rules - the Schematron Rules that enforce the explicitly defined constraints for the information model.
Source | The equivalent XSD code for the declaration of the element. This includes the multiplicity and default values for the element. See the W3C XSD documentation for the description of the permitted contents for this declaration. If the element is imported i.e. from an external XSD, only the URL for that XSD will be given.

toc | top

### A1.7 XSD Description for a Complex Type

Table A1.7 provides the key to the descriptions of XSD complex type tables.

Table A1.7 The key to the descriptions of XSD complex type tables.
Feature | Definition and Usage
--- | ---
Namespace | The namespace for the XSD complexType.
Annotations | The documentation comment for the data-type (the comment within the XSD).
Diagram | This diagram consists of four types of linked blocks. Straight link lines denote XML sequence whereas diagonal lines denote XML selection/unordered. The block forms are: ComplexType Block - a purple and grey shaded rectangle containing the name of the complexType and identification of whether it is abstract and supports mixed content; Element Blocks - blue and grey shaded rounded rectangles containing the name of the element, its data-type, any default value and the multiplicity (denoted by a circle containing either the symbol "?", "1", "*", "+" or "U" representing optional, required, optionally many, at least one or unordered respectively. Unordered makes use of an associated set of Schematron Rules); Attribute Blocks - orange and grey shaded rounded rectangles containing the name of the attribute, its data-type, any default value and the multiplicity (denoted by a circle containing either the symbol "?" or "1" representing option or required respectively); Attribute Group Blocks - orange shaded rounded rectangle containing the name of the attribute group; Purple Surrounds - a surround on the attributes block denotes inherited attributes and a surround on the element block denotes inherited elements.
Properties | The properties of the class expressed in terms of whether or not the complexType is abstract {true, false} or whether it supports mixed content {true, false}.
Facets | The permitted set of facets for the content i.e. the ways in which the content is further constrained. This row is only present if there are associated facets. The set of permitted facets are: Enumeration - a permitted value MinLength - the required minimum number of characters MaxLength - the maximum number of characters WhiteSpace - default handling of white-space i.e. preserve or replace or collapse MinInclusive - the permitted minimum value (inclusive) MaxInclusive - the permitted maximum value (inclusive) Pattern - the permitted character set defined as a regular expression
Used by | The features in the XSD that make use of this complexType. These features are listed under the headings "Root Elements", "Elements" and "ComplexTypes". Each of the entries is linked to its formal description table.
Model | The set of child elements. This is an ordered list of elements (as per the sequence in the complexType) and accompanied by their multiplicity. Links to the corresponding declarations are supplied. In the case where the type is an enumeration or primitiveType then the value is "N/A". The value may also be "Empty" to indicate that no children are permitted. In some situations the value may be "None" denoting that there are no children defined e.g. for a base class from which other classes are derived and which may have children as part of the extension.
Attributes | The set of global and local XML attributes for this complexType. Links are made to the associated tabular definitions. Each attribute is described by: QName - the name with a link to the corresponding table description Type - the data-type Inherited - Yes/No statement of whether or not this attribute is inherited from a base complexType Scope - the scope defined as either "Local" or "Global" Use - the multiplicity as either "Required" or "Optional" Default - the default value or a "-" if there is none
Schematron Rules | The set of schematron rules to be applied for the class grouped as: Unordered Class - the Schematron Rules that enforce the "Unordered" stereotype; NS Constraint - the Schematron Rules that enforce the constraints on extension XML attributes; Explicit Rules - the Schematron Rules that enforce the explicitly defined constraints for the information model.
Source | The equivalent XSD code for the declaration of the complexType. This is the full declaration. See the W3C XSD documentation for the description of the permitted contents for this declaration.

toc | top

### A1.8 XSD Description for a Simple Type

Table A1.8 provides the key to the descriptions of XSD simple type tables.

Table A1.8 The key to the descriptions of XSD simple type tables.
Feature | Definition and Usage
--- | ---
Namespace | The namespace for the XSD simpleType.
Diagram | This diagram consists of a single block. The block form is: SimpleType Block - a green and grey shaded rectangle containing the name of the simpleType and its data-type
Type | The data-type for the element. This is either a primitiveType or an enumeration.
Facets | The permitted set of facets for the content i.e. the ways in which the content is further constrained. This row is only present if there are associated facets. The set of permitted facets are: Enumeration - a permitted value MinLength - the required minimum number of characters MaxLength - the maximum number of characters WhiteSpace - default handling of white-space i.e. preserve or replace or collapse MinInclusive - the permitted minimum value (inclusive) MaxInclusive - the permitted maximum value (inclusive) Pattern - the permitted character set defined as a regular expression
Used by | The features in the XSD that make use of this simpleType. These features are listed under the headings "Attributes", "Elements" and "ComplexTypes". Each of the entries is linked to its formal description table.
Source | The equivalent XSD code for the declaration of the simpleType. This is the full declaration. See the W3C XSD documentation for the description of the permitted contents for this declaration.

toc | top

### A1.9 XSD Description for an Attribute Group

Table A1.9 provides the key to the descriptions of XSD attribute group tables.

Table A1.9 The key to the descriptions of XSD attribute group tables.
Feature | Definition and Usage
--- | ---
Namespace | The namespace for the XSD attribute group.
Diagram | This diagram consists of two types of linked blocks: Attribute Group Block - an orange shaded rectangle containing the name of the attribute group Attribute Blocks - an orange and grey shaded rectangle containing the name of the attribute, its data-type, any default value and the multiplicity (denoted by a circle containing either the symbol "?" or "1" representing optional or required respectively)
Used by | The features in the XSD that make use of this attributeGroup. These features are listed under the heading "ComplexTypes". Each of the entries is linked to its formal description table.
Attributes | The set of XML attributes that constitute the attributeGroup. This includes the data-type and multiplicity.
Schematron Rules | The set of schematron rules to be applied for the attributeGroup are: NS Constraint - the Schematron Rules that enforce the constraints on extension XML attributes; Explicit Rules - the Schematron Rules that enforce the explicitly defined constraints for the information model.
Source | The equivalent XSD code for the declaration of the attributeGroup. See the W3C XSD documentation for the description of the permitted contents for this declaration.

toc | top

### A1.10 XSD Description for an Attribute

Table A1.10 provides the key to the descriptions of XSD attribute tables.

Table A1.10 The key to the descriptions of XSD attribute tables.
Feature | Definition and Usage
--- | ---
Namespace | The namespace for the XSD attribute. Only external/imported attributes have a namespace.
Properties | The properties of the attributes expressed in terms of the multiplicity i.e. "Optional" or "Required" and the default value (not all attributes will have a default value).
Facets | The permitted set of facets for the content i.e. the ways in which the content is further constrained. This row is only present if there are associated facets. The set of permitted facets are: Enumeration - a permitted value MinLength - the required minimum number of characters MaxLength - the maximum number of characters WhiteSpace - default handling of white-space i.e. preserve or replace or collapse MinInclusive - the permitted minimum value (inclusive) MaxInclusive - the permitted maximum value (inclusive) Pattern - the permitted character set defined as a regular expression
Source | The equivalent XSD code for the declaration of the attribute. See the W3C XSD documentation for the description of the permitted contents for this declaration.

toc | top

### A1.11 VDEX Description for an External Vocabulary

Table A1.11 provides the key to the descriptions of VDEX tables.

Table A1.11 The key to the descriptions of VDEX vocabulary binding tables.
Feature | Definition
--- | ---
Name | The name/title for the vocabulary.
Identifier | The unique identifier the vocabulary.
Location | The Web location for the VDEX file.
Type | The type of vocabulary. The choise is "glossaryOrDictionary", "flatTokenTerms", "hierarchicalTokenTerms", "thesaurus" or "lax" (see the IMS VDEX Specification [VDEX, 04] for the use of these terms).
Publisher | The publisher of the vocabulary.
Keywords | The keywords for the vocabulary.
Terms | The set of terms that constitute the vocabulary. Each term there is defined by its: Name - the vocabulary name/token Status - the release status of the term either "Draft", "Provisional" or "Final" Caption - the human readable caption/label for the term Description - the meaning of the term

toc | top

# Appendix B XSD Listing

## B1 QTI ASI XSD Listing

The XSD listing is shown below (the XSD is available at: http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqti_v2p2p2.xsd).

    <?xml version = "1.0" encoding = "UTF-8"?>
    <xs:schema xmlns="http://www.imsglobal.org/xsd/imsqti_v2p2"
         targetNamespace="http://www.imsglobal.org/xsd/imsqti_v2p2"
         xmlns:xi="http://www.w3.org/2001/XInclude"
         xmlns:m2="http://www.w3.org/1998/Math/MathML"
         xmlns:apip="http://www.imsglobal.org/xsd/apip/apipv1p0/imsapip_qtiv1p0"
         xmlns:m3="http://www.w3.org/2010/Math/MathML"
         xmlns:qh5="http://www.imsglobal.org/xsd/imsqtiv2p2_html5_v1p0"
         xmlns:ssml11="http://www.w3.org/2010/10/synthesis"
         xmlns:xs="http://www.w3.org/2001/XMLSchema"
         xmlns:sch="http://purl.oclc.org/dsdl/schematron"
         version="IMS QTI ASI 2.2.2"
         elementFormDefault="qualified"
         attributeFormDefault="unqualified">
        <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.imsglobal.org/xsd/w3/2001/xml.xsd" />
        <xs:import namespace="http://www.w3.org/2001/XInclude" schemaLocation="http://www.imsglobal.org/xsd/w3/2001/XInclude.xsd" />
        <xs:import namespace="http://www.w3.org/1998/Math/MathML" schemaLocation="http://www.w3.org/Math/XMLSchema/mathml2/mathml2.xsd" />
        <xs:import namespace="http://www.imsglobal.org/xsd/apip/apipv1p0/imsapip_qtiv1p0" schemaLocation="http://www.imsglobal.org/profile/apip/apipv1p0/apipv1p0_qtiextv2p2_v1p0p1.xsd" />
        <xs:import namespace="http://www.w3.org/2010/Math/MathML" schemaLocation="http://www.imsglobal.org/xsd/w3/Math/XMLSchema/mathml3/mathml3.xsd" />
        <xs:import namespace="http://www.imsglobal.org/xsd/imsqtiv2p2_html5_v1p0" schemaLocation="http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqtiv2p2p1_html5_v1p0.xsd" />
        <xs:import namespace="http://www.w3.org/2010/10/synthesis" schemaLocation="http://www.imsglobal.org/xsd/w3/2010/ssmlv1p1-core.xsd" />

        <xs:annotation>
            <xs:documentation>
                XSD Data File Information
                =========================
                Author:         Colin Smythe (IMS Global UK) and Mark McKell (IMS, Global, USA)
                Date:           27th November, 2017
                Version:        2.2.2
                Status:         Final Release
                Description:    This is the Platform Specific Model for the IMS QTIv2.2 specification Information Model. It is from this model that the corresponding XSD is generated.

                History:        Version 2.2: Supercedes the full IMS QTIv2.1 specification. Version 2.2.1: (a) The ARIA attributes using the 'ElementIDList' class have been re-assigned the 'IDREFS' primitiveType and the 'ElementIDList' class has been deleted; (b) The QTI-HTML5v2.2 XSD reference has been changed to QTI-HTML5v2.2.1 XSD; (c) The multiplicity of the 'col' attribute in the 'ColGroup' class has been changed to [0..*]; (d) The schematron rules for the extensions of the 'language' and 'base' characterisics have been corrected to refer to 'xml:lang' and 'xml:base' respectively. Version 2.2.2: Corrections to the Schematron rules to enforce numeric comparisons using the 'number()' function.

                License:        IPR and Distribution Notices

                                This machine readable file is derived from IMS Global specification IMS Question and Test Interoperability (QTI) Version 2.2.2
                                found at http://www.imsglobal.org/question and the original IMS Global schema binding or code base
                                http://www.imsglobal.org/qti.

                                Recipients of this document are requested to submit, with their comments, notification of any relevant
                                patent claims or other intellectual property rights of which they may be aware that might be infringed by
                                any implementation of the specification set forth in this document, and to provide supporting documentation.

                                IMS takes no position regarding the validity or scope of any intellectual property or other rights that might
                                be claimed to pertain to the implementation or use of the technology described in this document or the extent
                                to which any license under such rights might or might not be available; neither does it represent that it has
                                made any effort to identify any such rights. Information on IMS procedures with respect to rights in IMS
                                specifications can be found at the IMS Global Intellectual Property Rights web page: http://www.imsglobal.org/ipr/imsipr_policyFinal.pdf.

                                Copyright (c) IMS Global Learning Consortium 1999-2017. All Rights Reserved.

                                Use of this specification to develop products or services is governed by the license with IMS found on the IMS website: http://www.imsglobal.org/license.html.

                                Permission is granted to all parties to use excerpts from this document as needed in producing requests for proposals.

                                The limited permissions granted above are perpetual and will not be revoked by IMS or its successors or assigns.

                                THIS SPECIFICATION IS BEING OFFERED WITHOUT ANY WARRANTY WHATSOEVER, AND IN PARTICULAR, ANY WARRANTY OF NONINFRINGEMENT IS
                                EXPRESSLY DISCLAIMED. ANY USE OF THIS SPECIFICATION SHALL BE MADE ENTIRELY AT THE IMPLEMENTERS OWN RISK, AND NEITHER THE CONSORTIUM
                                NOR ANY OF ITS MEMBERS OR SUBMITTERS, SHALL HAVE ANY LIABILITY WHATSOEVER TO ANY IMPLEMENTER OR THIRD PARTY FOR ANY DAMAGES OF
                                ANY NATURE WHATSOEVER, DIRECTLY OR INDIRECTLY, ARISING FROM THE USE OF THIS SPECIFICATION.

                Source UML File Information
                ===========================
                The source file information must be supplied as an XMI file (without diagram layout information).
                The supported UML authoring tools are:
                (a) Poseidon - v6 (and later)
                (b) Papyrus - v1.1.3 (and later)

                Source XSLT File Information
                ============================
                XSL Generator:    Specificationv1p0_GenerationToolv1.xsl
                XSLT Processor:   Saxon
                Release:          1.0
                Date:             31st July, 2017
                Autogen Engineer: Colin Smythe (IMS Global, UK)
                Autogen Date:     2017-11-27

                IMS Global Auto-generation Binding Tool-kit (I-BAT)
                ===================================================
                This file was auto-generated using the IMS Global Binding Auto-generation Tool-kit (I-BAT).  While every
                attempt has been made to ensure that this tool auto-generates the files correctly, users should be aware
                that this is an experimental tool.  Permission is given to make use of this tool.  IMS Global makes no
                claim on the materials created by third party users of this tool.  Details on how to use this tool
                are contained in the IMS Global "I-BAT" documentation available at the IMS Global web-site:
                http://www.imsglobal.org.

                Tool Copyright:  2012-2017  (c) IMS Global Learning Consortium Inc.  All Rights Reserved.
            </xs:documentation>
        </xs:annotation>

        <xs:annotation>
            <xs:documentation>
                Schematron Extension Validation Rules
                =====================================
                This is the set of Schematron rules that have been created to enforce the validation constraints on namespaced extensions.
                These rules ensure that the names of the extension features conform to defined naming convention (expressed using a REGEX).
                At present these rules are limited to permitted names for the proprietary XML attributes.
            </xs:documentation>
            <xs:appinfo>
                <sch:ns uri="http://www.imsglobal.org/xsd/imsqti_v2p2" prefix="qti" />
                <sch:title>Schematron validation rules for the enforcement naming constraints on XML attribute provided as proprietary extensions.</sch:title>

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULESET_GLOBALELEMENT_DATAEXTENSIONRULES">
                    <sch:title>Rules applied to Global Elements that have constrained extension attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:a">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='href' or string(name(@*[1]))='type' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='href' or string(name(@*[2]))='type' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='href' or string(name(@*[3]))='type' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='href' or string(name(@*[4]))='type' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='href' or string(name(@*[5]))='type' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='href' or string(name(@*[6]))='type' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='href' or string(name(@*[7]))='type' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='href' or string(name(@*[8]))='type' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='href' or string(name(@*[9]))='type' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='href' or string(name(@*[10]))='type' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='href' or string(name(@*[11]))='type' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='href' or string(name(@*[12]))='type' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='href' or string(name(@*[13]))='type' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='href' or string(name(@*[14]))='type' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='href' or string(name(@*[15]))='type' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='href' or string(name(@*[16]))='type' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='href' or string(name(@*[17]))='type' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='href' or string(name(@*[18]))='type' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='href' or string(name(@*[19]))='type' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (a): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:abbr">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (abbr): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:acronym">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (acronym): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:address">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (address): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:associableHotspot">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='identifier' or string(name(@*[1]))='templateIdentifier' or string(name(@*[1]))='showHide' or string(name(@*[1]))='matchGroup' or string(name(@*[1]))='shape' or string(name(@*[1]))='coords' or string(name(@*[1]))='hotspotLabel' or string(name(@*[1]))='matchMax' or string(name(@*[1]))='matchMin' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='identifier' or string(name(@*[2]))='templateIdentifier' or string(name(@*[2]))='showHide' or string(name(@*[2]))='matchGroup' or string(name(@*[2]))='shape' or string(name(@*[2]))='coords' or string(name(@*[2]))='hotspotLabel' or string(name(@*[2]))='matchMax' or string(name(@*[2]))='matchMin' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='identifier' or string(name(@*[3]))='templateIdentifier' or string(name(@*[3]))='showHide' or string(name(@*[3]))='matchGroup' or string(name(@*[3]))='shape' or string(name(@*[3]))='coords' or string(name(@*[3]))='hotspotLabel' or string(name(@*[3]))='matchMax' or string(name(@*[3]))='matchMin' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='identifier' or string(name(@*[4]))='templateIdentifier' or string(name(@*[4]))='showHide' or string(name(@*[4]))='matchGroup' or string(name(@*[4]))='shape' or string(name(@*[4]))='coords' or string(name(@*[4]))='hotspotLabel' or string(name(@*[4]))='matchMax' or string(name(@*[4]))='matchMin' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='identifier' or string(name(@*[5]))='templateIdentifier' or string(name(@*[5]))='showHide' or string(name(@*[5]))='matchGroup' or string(name(@*[5]))='shape' or string(name(@*[5]))='coords' or string(name(@*[5]))='hotspotLabel' or string(name(@*[5]))='matchMax' or string(name(@*[5]))='matchMin' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='identifier' or string(name(@*[6]))='templateIdentifier' or string(name(@*[6]))='showHide' or string(name(@*[6]))='matchGroup' or string(name(@*[6]))='shape' or string(name(@*[6]))='coords' or string(name(@*[6]))='hotspotLabel' or string(name(@*[6]))='matchMax' or string(name(@*[6]))='matchMin' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='identifier' or string(name(@*[7]))='templateIdentifier' or string(name(@*[7]))='showHide' or string(name(@*[7]))='matchGroup' or string(name(@*[7]))='shape' or string(name(@*[7]))='coords' or string(name(@*[7]))='hotspotLabel' or string(name(@*[7]))='matchMax' or string(name(@*[7]))='matchMin' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='identifier' or string(name(@*[8]))='templateIdentifier' or string(name(@*[8]))='showHide' or string(name(@*[8]))='matchGroup' or string(name(@*[8]))='shape' or string(name(@*[8]))='coords' or string(name(@*[8]))='hotspotLabel' or string(name(@*[8]))='matchMax' or string(name(@*[8]))='matchMin' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='identifier' or string(name(@*[9]))='templateIdentifier' or string(name(@*[9]))='showHide' or string(name(@*[9]))='matchGroup' or string(name(@*[9]))='shape' or string(name(@*[9]))='coords' or string(name(@*[9]))='hotspotLabel' or string(name(@*[9]))='matchMax' or string(name(@*[9]))='matchMin' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='identifier' or string(name(@*[10]))='templateIdentifier' or string(name(@*[10]))='showHide' or string(name(@*[10]))='matchGroup' or string(name(@*[10]))='shape' or string(name(@*[10]))='coords' or string(name(@*[10]))='hotspotLabel' or string(name(@*[10]))='matchMax' or string(name(@*[10]))='matchMin' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='identifier' or string(name(@*[11]))='templateIdentifier' or string(name(@*[11]))='showHide' or string(name(@*[11]))='matchGroup' or string(name(@*[11]))='shape' or string(name(@*[11]))='coords' or string(name(@*[11]))='hotspotLabel' or string(name(@*[11]))='matchMax' or string(name(@*[11]))='matchMin' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='identifier' or string(name(@*[12]))='templateIdentifier' or string(name(@*[12]))='showHide' or string(name(@*[12]))='matchGroup' or string(name(@*[12]))='shape' or string(name(@*[12]))='coords' or string(name(@*[12]))='hotspotLabel' or string(name(@*[12]))='matchMax' or string(name(@*[12]))='matchMin' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='identifier' or string(name(@*[13]))='templateIdentifier' or string(name(@*[13]))='showHide' or string(name(@*[13]))='matchGroup' or string(name(@*[13]))='shape' or string(name(@*[13]))='coords' or string(name(@*[13]))='hotspotLabel' or string(name(@*[13]))='matchMax' or string(name(@*[13]))='matchMin' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='identifier' or string(name(@*[14]))='templateIdentifier' or string(name(@*[14]))='showHide' or string(name(@*[14]))='matchGroup' or string(name(@*[14]))='shape' or string(name(@*[14]))='coords' or string(name(@*[14]))='hotspotLabel' or string(name(@*[14]))='matchMax' or string(name(@*[14]))='matchMin' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='identifier' or string(name(@*[15]))='templateIdentifier' or string(name(@*[15]))='showHide' or string(name(@*[15]))='matchGroup' or string(name(@*[15]))='shape' or string(name(@*[15]))='coords' or string(name(@*[15]))='hotspotLabel' or string(name(@*[15]))='matchMax' or string(name(@*[15]))='matchMin' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='identifier' or string(name(@*[16]))='templateIdentifier' or string(name(@*[16]))='showHide' or string(name(@*[16]))='matchGroup' or string(name(@*[16]))='shape' or string(name(@*[16]))='coords' or string(name(@*[16]))='hotspotLabel' or string(name(@*[16]))='matchMax' or string(name(@*[16]))='matchMin' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='identifier' or string(name(@*[17]))='templateIdentifier' or string(name(@*[17]))='showHide' or string(name(@*[17]))='matchGroup' or string(name(@*[17]))='shape' or string(name(@*[17]))='coords' or string(name(@*[17]))='hotspotLabel' or string(name(@*[17]))='matchMax' or string(name(@*[17]))='matchMin' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='identifier' or string(name(@*[18]))='templateIdentifier' or string(name(@*[18]))='showHide' or string(name(@*[18]))='matchGroup' or string(name(@*[18]))='shape' or string(name(@*[18]))='coords' or string(name(@*[18]))='hotspotLabel' or string(name(@*[18]))='matchMax' or string(name(@*[18]))='matchMin' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='identifier' or string(name(@*[19]))='templateIdentifier' or string(name(@*[19]))='showHide' or string(name(@*[19]))='matchGroup' or string(name(@*[19]))='shape' or string(name(@*[19]))='coords' or string(name(@*[19]))='hotspotLabel' or string(name(@*[19]))='matchMax' or string(name(@*[19]))='matchMin' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='identifier' or string(name(@*[20]))='templateIdentifier' or string(name(@*[20]))='showHide' or string(name(@*[20]))='matchGroup' or string(name(@*[20]))='shape' or string(name(@*[20]))='coords' or string(name(@*[20]))='hotspotLabel' or string(name(@*[20]))='matchMax' or string(name(@*[20]))='matchMin' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='identifier' or string(name(@*[21]))='templateIdentifier' or string(name(@*[21]))='showHide' or string(name(@*[21]))='matchGroup' or string(name(@*[21]))='shape' or string(name(@*[21]))='coords' or string(name(@*[21]))='hotspotLabel' or string(name(@*[21]))='matchMax' or string(name(@*[21]))='matchMin' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='xml:base' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowsto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[22]))=0 or string(name(@*[22]))='identifier' or string(name(@*[22]))='templateIdentifier' or string(name(@*[22]))='showHide' or string(name(@*[22]))='matchGroup' or string(name(@*[22]))='shape' or string(name(@*[22]))='coords' or string(name(@*[22]))='hotspotLabel' or string(name(@*[22]))='matchMax' or string(name(@*[22]))='matchMin' or string(name(@*[22]))='id' or string(name(@*[22]))='class' or string(name(@*[22]))='xml:lang' or string(name(@*[22]))='label' or string(name(@*[22]))='xml:base' or string(name(@*[22]))='dir' or string(name(@*[22]))='role' or string(name(@*[22]))='aria-controls' or string(name(@*[22]))='aria-describedby' or string(name(@*[22]))='aria-flowsto' or string(name(@*[22]))='aria-label' or string(name(@*[22]))='aria-labelledby' or string(name(@*[22]))='aria-level' or string(name(@*[22]))='aria-live' or string(name(@*[22]))='aria-orientation' or string(name(@*[22]))='aria-owns' or starts-with(name(@*[22]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 22] Invalid XML attribute in position 22 with name of <sch:value-of select="string(name(@*[22]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[23]))=0 or string(name(@*[23]))='identifier' or string(name(@*[23]))='templateIdentifier' or string(name(@*[23]))='showHide' or string(name(@*[23]))='matchGroup' or string(name(@*[23]))='shape' or string(name(@*[23]))='coords' or string(name(@*[23]))='hotspotLabel' or string(name(@*[23]))='matchMax' or string(name(@*[23]))='matchMin' or string(name(@*[23]))='id' or string(name(@*[23]))='class' or string(name(@*[23]))='xml:lang' or string(name(@*[23]))='label' or string(name(@*[23]))='xml:base' or string(name(@*[23]))='dir' or string(name(@*[23]))='role' or string(name(@*[23]))='aria-controls' or string(name(@*[23]))='aria-describedby' or string(name(@*[23]))='aria-flowsto' or string(name(@*[23]))='aria-label' or string(name(@*[23]))='aria-labelledby' or string(name(@*[23]))='aria-level' or string(name(@*[23]))='aria-live' or string(name(@*[23]))='aria-orientation' or string(name(@*[23]))='aria-owns' or starts-with(name(@*[23]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 23] Invalid XML attribute in position 23 with name of <sch:value-of select="string(name(@*[23]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[24]))=0 or string(name(@*[24]))='identifier' or string(name(@*[24]))='templateIdentifier' or string(name(@*[24]))='showHide' or string(name(@*[24]))='matchGroup' or string(name(@*[24]))='shape' or string(name(@*[24]))='coords' or string(name(@*[24]))='hotspotLabel' or string(name(@*[24]))='matchMax' or string(name(@*[24]))='matchMin' or string(name(@*[24]))='id' or string(name(@*[24]))='class' or string(name(@*[24]))='xml:lang' or string(name(@*[24]))='label' or string(name(@*[24]))='xml:base' or string(name(@*[24]))='dir' or string(name(@*[24]))='role' or string(name(@*[24]))='aria-controls' or string(name(@*[24]))='aria-describedby' or string(name(@*[24]))='aria-flowsto' or string(name(@*[24]))='aria-label' or string(name(@*[24]))='aria-labelledby' or string(name(@*[24]))='aria-level' or string(name(@*[24]))='aria-live' or string(name(@*[24]))='aria-orientation' or string(name(@*[24]))='aria-owns' or starts-with(name(@*[24]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 24] Invalid XML attribute in position 24 with name of <sch:value-of select="string(name(@*[24]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[25]))=0 or string(name(@*[25]))='identifier' or string(name(@*[25]))='templateIdentifier' or string(name(@*[25]))='showHide' or string(name(@*[25]))='matchGroup' or string(name(@*[25]))='shape' or string(name(@*[25]))='coords' or string(name(@*[25]))='hotspotLabel' or string(name(@*[25]))='matchMax' or string(name(@*[25]))='matchMin' or string(name(@*[25]))='id' or string(name(@*[25]))='class' or string(name(@*[25]))='xml:lang' or string(name(@*[25]))='label' or string(name(@*[25]))='xml:base' or string(name(@*[25]))='dir' or string(name(@*[25]))='role' or string(name(@*[25]))='aria-controls' or string(name(@*[25]))='aria-describedby' or string(name(@*[25]))='aria-flowsto' or string(name(@*[25]))='aria-label' or string(name(@*[25]))='aria-labelledby' or string(name(@*[25]))='aria-level' or string(name(@*[25]))='aria-live' or string(name(@*[25]))='aria-orientation' or string(name(@*[25]))='aria-owns' or starts-with(name(@*[25]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 25] Invalid XML attribute in position 25 with name of <sch:value-of select="string(name(@*[25]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[26]))=0 or string(name(@*[26]))='identifier' or string(name(@*[26]))='templateIdentifier' or string(name(@*[26]))='showHide' or string(name(@*[26]))='matchGroup' or string(name(@*[26]))='shape' or string(name(@*[26]))='coords' or string(name(@*[26]))='hotspotLabel' or string(name(@*[26]))='matchMax' or string(name(@*[26]))='matchMin' or string(name(@*[26]))='id' or string(name(@*[26]))='class' or string(name(@*[26]))='xml:lang' or string(name(@*[26]))='label' or string(name(@*[26]))='xml:base' or string(name(@*[26]))='dir' or string(name(@*[26]))='role' or string(name(@*[26]))='aria-controls' or string(name(@*[26]))='aria-describedby' or string(name(@*[26]))='aria-flowsto' or string(name(@*[26]))='aria-label' or string(name(@*[26]))='aria-labelledby' or string(name(@*[26]))='aria-level' or string(name(@*[26]))='aria-live' or string(name(@*[26]))='aria-orientation' or string(name(@*[26]))='aria-owns' or starts-with(name(@*[26]), 'data-')">
                            [RULE GLOBAL ELEMENT (associableHotspot): Assertion 26] Invalid XML attribute in position 26 with name of <sch:value-of select="string(name(@*[26]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:associateInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='shuffle' or string(name(@*[1]))='maxAssociations' or string(name(@*[1]))='minAssociations' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='shuffle' or string(name(@*[2]))='maxAssociations' or string(name(@*[2]))='minAssociations' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='shuffle' or string(name(@*[3]))='maxAssociations' or string(name(@*[3]))='minAssociations' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='shuffle' or string(name(@*[4]))='maxAssociations' or string(name(@*[4]))='minAssociations' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='shuffle' or string(name(@*[5]))='maxAssociations' or string(name(@*[5]))='minAssociations' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='shuffle' or string(name(@*[6]))='maxAssociations' or string(name(@*[6]))='minAssociations' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='shuffle' or string(name(@*[7]))='maxAssociations' or string(name(@*[7]))='minAssociations' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='shuffle' or string(name(@*[8]))='maxAssociations' or string(name(@*[8]))='minAssociations' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='shuffle' or string(name(@*[9]))='maxAssociations' or string(name(@*[9]))='minAssociations' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='shuffle' or string(name(@*[10]))='maxAssociations' or string(name(@*[10]))='minAssociations' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='shuffle' or string(name(@*[11]))='maxAssociations' or string(name(@*[11]))='minAssociations' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='shuffle' or string(name(@*[12]))='maxAssociations' or string(name(@*[12]))='minAssociations' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='shuffle' or string(name(@*[13]))='maxAssociations' or string(name(@*[13]))='minAssociations' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='shuffle' or string(name(@*[14]))='maxAssociations' or string(name(@*[14]))='minAssociations' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='shuffle' or string(name(@*[15]))='maxAssociations' or string(name(@*[15]))='minAssociations' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='shuffle' or string(name(@*[16]))='maxAssociations' or string(name(@*[16]))='minAssociations' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='shuffle' or string(name(@*[17]))='maxAssociations' or string(name(@*[17]))='minAssociations' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='shuffle' or string(name(@*[18]))='maxAssociations' or string(name(@*[18]))='minAssociations' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='shuffle' or string(name(@*[19]))='maxAssociations' or string(name(@*[19]))='minAssociations' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='shuffle' or string(name(@*[20]))='maxAssociations' or string(name(@*[20]))='minAssociations' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='shuffle' or string(name(@*[21]))='maxAssociations' or string(name(@*[21]))='minAssociations' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='xml:base' or string(name(@*[21]))='responseIdentifier' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowsto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (associateInteraction): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:b">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (b): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:bdo">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='title' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='title' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='title' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='title' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='title' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='title' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='title' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='title' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='title' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='title' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='title' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='title' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='title' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='title' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='title' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='title' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='title' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (bdo): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:big">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (big): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:blockquote">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='cite' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='cite' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='cite' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='cite' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='cite' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='cite' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='cite' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='cite' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='cite' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='cite' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='cite' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='cite' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='cite' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='cite' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='cite' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='cite' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='cite' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='cite' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (blockquote): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:br">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (br): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:caption">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (caption): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (caption): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (caption): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (caption): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (caption): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (caption): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (caption): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (caption): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (caption): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (caption): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (caption): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (caption): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (caption): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (caption): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (caption): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (caption): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:choiceInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='shuffle' or string(name(@*[1]))='maxChoices' or string(name(@*[1]))='minChoices' or string(name(@*[1]))='orientation' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='shuffle' or string(name(@*[2]))='maxChoices' or string(name(@*[2]))='minChoices' or string(name(@*[2]))='orientation' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='shuffle' or string(name(@*[3]))='maxChoices' or string(name(@*[3]))='minChoices' or string(name(@*[3]))='orientation' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='shuffle' or string(name(@*[4]))='maxChoices' or string(name(@*[4]))='minChoices' or string(name(@*[4]))='orientation' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='shuffle' or string(name(@*[5]))='maxChoices' or string(name(@*[5]))='minChoices' or string(name(@*[5]))='orientation' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='shuffle' or string(name(@*[6]))='maxChoices' or string(name(@*[6]))='minChoices' or string(name(@*[6]))='orientation' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='shuffle' or string(name(@*[7]))='maxChoices' or string(name(@*[7]))='minChoices' or string(name(@*[7]))='orientation' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='shuffle' or string(name(@*[8]))='maxChoices' or string(name(@*[8]))='minChoices' or string(name(@*[8]))='orientation' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='shuffle' or string(name(@*[9]))='maxChoices' or string(name(@*[9]))='minChoices' or string(name(@*[9]))='orientation' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='shuffle' or string(name(@*[10]))='maxChoices' or string(name(@*[10]))='minChoices' or string(name(@*[10]))='orientation' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='shuffle' or string(name(@*[11]))='maxChoices' or string(name(@*[11]))='minChoices' or string(name(@*[11]))='orientation' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='shuffle' or string(name(@*[12]))='maxChoices' or string(name(@*[12]))='minChoices' or string(name(@*[12]))='orientation' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='shuffle' or string(name(@*[13]))='maxChoices' or string(name(@*[13]))='minChoices' or string(name(@*[13]))='orientation' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='shuffle' or string(name(@*[14]))='maxChoices' or string(name(@*[14]))='minChoices' or string(name(@*[14]))='orientation' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='shuffle' or string(name(@*[15]))='maxChoices' or string(name(@*[15]))='minChoices' or string(name(@*[15]))='orientation' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='shuffle' or string(name(@*[16]))='maxChoices' or string(name(@*[16]))='minChoices' or string(name(@*[16]))='orientation' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='shuffle' or string(name(@*[17]))='maxChoices' or string(name(@*[17]))='minChoices' or string(name(@*[17]))='orientation' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='shuffle' or string(name(@*[18]))='maxChoices' or string(name(@*[18]))='minChoices' or string(name(@*[18]))='orientation' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='shuffle' or string(name(@*[19]))='maxChoices' or string(name(@*[19]))='minChoices' or string(name(@*[19]))='orientation' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='shuffle' or string(name(@*[20]))='maxChoices' or string(name(@*[20]))='minChoices' or string(name(@*[20]))='orientation' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='shuffle' or string(name(@*[21]))='maxChoices' or string(name(@*[21]))='minChoices' or string(name(@*[21]))='orientation' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='xml:base' or string(name(@*[21]))='responseIdentifier' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowsto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[22]))=0 or string(name(@*[22]))='shuffle' or string(name(@*[22]))='maxChoices' or string(name(@*[22]))='minChoices' or string(name(@*[22]))='orientation' or string(name(@*[22]))='id' or string(name(@*[22]))='class' or string(name(@*[22]))='xml:lang' or string(name(@*[22]))='label' or string(name(@*[22]))='xml:base' or string(name(@*[22]))='responseIdentifier' or string(name(@*[22]))='dir' or string(name(@*[22]))='role' or string(name(@*[22]))='aria-controls' or string(name(@*[22]))='aria-describedby' or string(name(@*[22]))='aria-flowsto' or string(name(@*[22]))='aria-label' or string(name(@*[22]))='aria-labelledby' or string(name(@*[22]))='aria-level' or string(name(@*[22]))='aria-live' or string(name(@*[22]))='aria-orientation' or string(name(@*[22]))='aria-owns' or starts-with(name(@*[22]), 'data-')">
                            [RULE GLOBAL ELEMENT (choiceInteraction): Assertion 22] Invalid XML attribute in position 22 with name of <sch:value-of select="string(name(@*[22]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:cite">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (cite): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:code">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (code): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:col">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='span' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='span' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='span' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='span' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='span' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='span' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='span' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='span' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='span' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='span' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='span' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='span' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='span' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='span' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='span' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='span' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='span' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='span' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (col): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:colgroup">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='span' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='span' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='span' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='span' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='span' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='span' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='span' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='span' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='span' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='span' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='span' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='span' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='span' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='span' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='span' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='span' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='span' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (colgroup): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:customInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='extension' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='extension' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='extension' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='extension' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='extension' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='extension' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='extension' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='extension' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='extension' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='extension' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='extension' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='extension' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='extension' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='extension' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='extension' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='extension' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='extension' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='extension' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='extension' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (customInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:dd">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (dd): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:dfn">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (dfn): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:div">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (div): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:dl">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (dl): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:drawingInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (drawingInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:dt">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (dt): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:em">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (em): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:endAttemptInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='title' or string(name(@*[1]))='countAttempt' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='title' or string(name(@*[2]))='countAttempt' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='title' or string(name(@*[3]))='countAttempt' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='title' or string(name(@*[4]))='countAttempt' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='title' or string(name(@*[5]))='countAttempt' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='title' or string(name(@*[6]))='countAttempt' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='title' or string(name(@*[7]))='countAttempt' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='title' or string(name(@*[8]))='countAttempt' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='title' or string(name(@*[9]))='countAttempt' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='title' or string(name(@*[10]))='countAttempt' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='title' or string(name(@*[11]))='countAttempt' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='title' or string(name(@*[12]))='countAttempt' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='title' or string(name(@*[13]))='countAttempt' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='title' or string(name(@*[14]))='countAttempt' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='title' or string(name(@*[15]))='countAttempt' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='title' or string(name(@*[16]))='countAttempt' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='title' or string(name(@*[17]))='countAttempt' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='title' or string(name(@*[18]))='countAttempt' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='title' or string(name(@*[19]))='countAttempt' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='title' or string(name(@*[20]))='countAttempt' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (endAttemptInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:extendedTextInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='base' or string(name(@*[1]))='stringIdentifier' or string(name(@*[1]))='expectedLength' or string(name(@*[1]))='patternMask' or string(name(@*[1]))='placeholderText' or string(name(@*[1]))='maxStrings' or string(name(@*[1]))='minStrings' or string(name(@*[1]))='expectedLines' or string(name(@*[1]))='format' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='base' or string(name(@*[2]))='stringIdentifier' or string(name(@*[2]))='expectedLength' or string(name(@*[2]))='patternMask' or string(name(@*[2]))='placeholderText' or string(name(@*[2]))='maxStrings' or string(name(@*[2]))='minStrings' or string(name(@*[2]))='expectedLines' or string(name(@*[2]))='format' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='base' or string(name(@*[3]))='stringIdentifier' or string(name(@*[3]))='expectedLength' or string(name(@*[3]))='patternMask' or string(name(@*[3]))='placeholderText' or string(name(@*[3]))='maxStrings' or string(name(@*[3]))='minStrings' or string(name(@*[3]))='expectedLines' or string(name(@*[3]))='format' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='base' or string(name(@*[4]))='stringIdentifier' or string(name(@*[4]))='expectedLength' or string(name(@*[4]))='patternMask' or string(name(@*[4]))='placeholderText' or string(name(@*[4]))='maxStrings' or string(name(@*[4]))='minStrings' or string(name(@*[4]))='expectedLines' or string(name(@*[4]))='format' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='base' or string(name(@*[5]))='stringIdentifier' or string(name(@*[5]))='expectedLength' or string(name(@*[5]))='patternMask' or string(name(@*[5]))='placeholderText' or string(name(@*[5]))='maxStrings' or string(name(@*[5]))='minStrings' or string(name(@*[5]))='expectedLines' or string(name(@*[5]))='format' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='base' or string(name(@*[6]))='stringIdentifier' or string(name(@*[6]))='expectedLength' or string(name(@*[6]))='patternMask' or string(name(@*[6]))='placeholderText' or string(name(@*[6]))='maxStrings' or string(name(@*[6]))='minStrings' or string(name(@*[6]))='expectedLines' or string(name(@*[6]))='format' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='base' or string(name(@*[7]))='stringIdentifier' or string(name(@*[7]))='expectedLength' or string(name(@*[7]))='patternMask' or string(name(@*[7]))='placeholderText' or string(name(@*[7]))='maxStrings' or string(name(@*[7]))='minStrings' or string(name(@*[7]))='expectedLines' or string(name(@*[7]))='format' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='base' or string(name(@*[8]))='stringIdentifier' or string(name(@*[8]))='expectedLength' or string(name(@*[8]))='patternMask' or string(name(@*[8]))='placeholderText' or string(name(@*[8]))='maxStrings' or string(name(@*[8]))='minStrings' or string(name(@*[8]))='expectedLines' or string(name(@*[8]))='format' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='base' or string(name(@*[9]))='stringIdentifier' or string(name(@*[9]))='expectedLength' or string(name(@*[9]))='patternMask' or string(name(@*[9]))='placeholderText' or string(name(@*[9]))='maxStrings' or string(name(@*[9]))='minStrings' or string(name(@*[9]))='expectedLines' or string(name(@*[9]))='format' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='base' or string(name(@*[10]))='stringIdentifier' or string(name(@*[10]))='expectedLength' or string(name(@*[10]))='patternMask' or string(name(@*[10]))='placeholderText' or string(name(@*[10]))='maxStrings' or string(name(@*[10]))='minStrings' or string(name(@*[10]))='expectedLines' or string(name(@*[10]))='format' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='base' or string(name(@*[11]))='stringIdentifier' or string(name(@*[11]))='expectedLength' or string(name(@*[11]))='patternMask' or string(name(@*[11]))='placeholderText' or string(name(@*[11]))='maxStrings' or string(name(@*[11]))='minStrings' or string(name(@*[11]))='expectedLines' or string(name(@*[11]))='format' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='base' or string(name(@*[12]))='stringIdentifier' or string(name(@*[12]))='expectedLength' or string(name(@*[12]))='patternMask' or string(name(@*[12]))='placeholderText' or string(name(@*[12]))='maxStrings' or string(name(@*[12]))='minStrings' or string(name(@*[12]))='expectedLines' or string(name(@*[12]))='format' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='base' or string(name(@*[13]))='stringIdentifier' or string(name(@*[13]))='expectedLength' or string(name(@*[13]))='patternMask' or string(name(@*[13]))='placeholderText' or string(name(@*[13]))='maxStrings' or string(name(@*[13]))='minStrings' or string(name(@*[13]))='expectedLines' or string(name(@*[13]))='format' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='base' or string(name(@*[14]))='stringIdentifier' or string(name(@*[14]))='expectedLength' or string(name(@*[14]))='patternMask' or string(name(@*[14]))='placeholderText' or string(name(@*[14]))='maxStrings' or string(name(@*[14]))='minStrings' or string(name(@*[14]))='expectedLines' or string(name(@*[14]))='format' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='base' or string(name(@*[15]))='stringIdentifier' or string(name(@*[15]))='expectedLength' or string(name(@*[15]))='patternMask' or string(name(@*[15]))='placeholderText' or string(name(@*[15]))='maxStrings' or string(name(@*[15]))='minStrings' or string(name(@*[15]))='expectedLines' or string(name(@*[15]))='format' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='base' or string(name(@*[16]))='stringIdentifier' or string(name(@*[16]))='expectedLength' or string(name(@*[16]))='patternMask' or string(name(@*[16]))='placeholderText' or string(name(@*[16]))='maxStrings' or string(name(@*[16]))='minStrings' or string(name(@*[16]))='expectedLines' or string(name(@*[16]))='format' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='base' or string(name(@*[17]))='stringIdentifier' or string(name(@*[17]))='expectedLength' or string(name(@*[17]))='patternMask' or string(name(@*[17]))='placeholderText' or string(name(@*[17]))='maxStrings' or string(name(@*[17]))='minStrings' or string(name(@*[17]))='expectedLines' or string(name(@*[17]))='format' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='base' or string(name(@*[18]))='stringIdentifier' or string(name(@*[18]))='expectedLength' or string(name(@*[18]))='patternMask' or string(name(@*[18]))='placeholderText' or string(name(@*[18]))='maxStrings' or string(name(@*[18]))='minStrings' or string(name(@*[18]))='expectedLines' or string(name(@*[18]))='format' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='base' or string(name(@*[19]))='stringIdentifier' or string(name(@*[19]))='expectedLength' or string(name(@*[19]))='patternMask' or string(name(@*[19]))='placeholderText' or string(name(@*[19]))='maxStrings' or string(name(@*[19]))='minStrings' or string(name(@*[19]))='expectedLines' or string(name(@*[19]))='format' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='base' or string(name(@*[20]))='stringIdentifier' or string(name(@*[20]))='expectedLength' or string(name(@*[20]))='patternMask' or string(name(@*[20]))='placeholderText' or string(name(@*[20]))='maxStrings' or string(name(@*[20]))='minStrings' or string(name(@*[20]))='expectedLines' or string(name(@*[20]))='format' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='base' or string(name(@*[21]))='stringIdentifier' or string(name(@*[21]))='expectedLength' or string(name(@*[21]))='patternMask' or string(name(@*[21]))='placeholderText' or string(name(@*[21]))='maxStrings' or string(name(@*[21]))='minStrings' or string(name(@*[21]))='expectedLines' or string(name(@*[21]))='format' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='xml:base' or string(name(@*[21]))='responseIdentifier' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowsto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[22]))=0 or string(name(@*[22]))='base' or string(name(@*[22]))='stringIdentifier' or string(name(@*[22]))='expectedLength' or string(name(@*[22]))='patternMask' or string(name(@*[22]))='placeholderText' or string(name(@*[22]))='maxStrings' or string(name(@*[22]))='minStrings' or string(name(@*[22]))='expectedLines' or string(name(@*[22]))='format' or string(name(@*[22]))='id' or string(name(@*[22]))='class' or string(name(@*[22]))='xml:lang' or string(name(@*[22]))='label' or string(name(@*[22]))='xml:base' or string(name(@*[22]))='responseIdentifier' or string(name(@*[22]))='dir' or string(name(@*[22]))='role' or string(name(@*[22]))='aria-controls' or string(name(@*[22]))='aria-describedby' or string(name(@*[22]))='aria-flowsto' or string(name(@*[22]))='aria-label' or string(name(@*[22]))='aria-labelledby' or string(name(@*[22]))='aria-level' or string(name(@*[22]))='aria-live' or string(name(@*[22]))='aria-orientation' or string(name(@*[22]))='aria-owns' or starts-with(name(@*[22]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 22] Invalid XML attribute in position 22 with name of <sch:value-of select="string(name(@*[22]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[23]))=0 or string(name(@*[23]))='base' or string(name(@*[23]))='stringIdentifier' or string(name(@*[23]))='expectedLength' or string(name(@*[23]))='patternMask' or string(name(@*[23]))='placeholderText' or string(name(@*[23]))='maxStrings' or string(name(@*[23]))='minStrings' or string(name(@*[23]))='expectedLines' or string(name(@*[23]))='format' or string(name(@*[23]))='id' or string(name(@*[23]))='class' or string(name(@*[23]))='xml:lang' or string(name(@*[23]))='label' or string(name(@*[23]))='xml:base' or string(name(@*[23]))='responseIdentifier' or string(name(@*[23]))='dir' or string(name(@*[23]))='role' or string(name(@*[23]))='aria-controls' or string(name(@*[23]))='aria-describedby' or string(name(@*[23]))='aria-flowsto' or string(name(@*[23]))='aria-label' or string(name(@*[23]))='aria-labelledby' or string(name(@*[23]))='aria-level' or string(name(@*[23]))='aria-live' or string(name(@*[23]))='aria-orientation' or string(name(@*[23]))='aria-owns' or starts-with(name(@*[23]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 23] Invalid XML attribute in position 23 with name of <sch:value-of select="string(name(@*[23]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[24]))=0 or string(name(@*[24]))='base' or string(name(@*[24]))='stringIdentifier' or string(name(@*[24]))='expectedLength' or string(name(@*[24]))='patternMask' or string(name(@*[24]))='placeholderText' or string(name(@*[24]))='maxStrings' or string(name(@*[24]))='minStrings' or string(name(@*[24]))='expectedLines' or string(name(@*[24]))='format' or string(name(@*[24]))='id' or string(name(@*[24]))='class' or string(name(@*[24]))='xml:lang' or string(name(@*[24]))='label' or string(name(@*[24]))='xml:base' or string(name(@*[24]))='responseIdentifier' or string(name(@*[24]))='dir' or string(name(@*[24]))='role' or string(name(@*[24]))='aria-controls' or string(name(@*[24]))='aria-describedby' or string(name(@*[24]))='aria-flowsto' or string(name(@*[24]))='aria-label' or string(name(@*[24]))='aria-labelledby' or string(name(@*[24]))='aria-level' or string(name(@*[24]))='aria-live' or string(name(@*[24]))='aria-orientation' or string(name(@*[24]))='aria-owns' or starts-with(name(@*[24]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 24] Invalid XML attribute in position 24 with name of <sch:value-of select="string(name(@*[24]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[25]))=0 or string(name(@*[25]))='base' or string(name(@*[25]))='stringIdentifier' or string(name(@*[25]))='expectedLength' or string(name(@*[25]))='patternMask' or string(name(@*[25]))='placeholderText' or string(name(@*[25]))='maxStrings' or string(name(@*[25]))='minStrings' or string(name(@*[25]))='expectedLines' or string(name(@*[25]))='format' or string(name(@*[25]))='id' or string(name(@*[25]))='class' or string(name(@*[25]))='xml:lang' or string(name(@*[25]))='label' or string(name(@*[25]))='xml:base' or string(name(@*[25]))='responseIdentifier' or string(name(@*[25]))='dir' or string(name(@*[25]))='role' or string(name(@*[25]))='aria-controls' or string(name(@*[25]))='aria-describedby' or string(name(@*[25]))='aria-flowsto' or string(name(@*[25]))='aria-label' or string(name(@*[25]))='aria-labelledby' or string(name(@*[25]))='aria-level' or string(name(@*[25]))='aria-live' or string(name(@*[25]))='aria-orientation' or string(name(@*[25]))='aria-owns' or starts-with(name(@*[25]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 25] Invalid XML attribute in position 25 with name of <sch:value-of select="string(name(@*[25]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[26]))=0 or string(name(@*[26]))='base' or string(name(@*[26]))='stringIdentifier' or string(name(@*[26]))='expectedLength' or string(name(@*[26]))='patternMask' or string(name(@*[26]))='placeholderText' or string(name(@*[26]))='maxStrings' or string(name(@*[26]))='minStrings' or string(name(@*[26]))='expectedLines' or string(name(@*[26]))='format' or string(name(@*[26]))='id' or string(name(@*[26]))='class' or string(name(@*[26]))='xml:lang' or string(name(@*[26]))='label' or string(name(@*[26]))='xml:base' or string(name(@*[26]))='responseIdentifier' or string(name(@*[26]))='dir' or string(name(@*[26]))='role' or string(name(@*[26]))='aria-controls' or string(name(@*[26]))='aria-describedby' or string(name(@*[26]))='aria-flowsto' or string(name(@*[26]))='aria-label' or string(name(@*[26]))='aria-labelledby' or string(name(@*[26]))='aria-level' or string(name(@*[26]))='aria-live' or string(name(@*[26]))='aria-orientation' or string(name(@*[26]))='aria-owns' or starts-with(name(@*[26]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 26] Invalid XML attribute in position 26 with name of <sch:value-of select="string(name(@*[26]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[27]))=0 or string(name(@*[27]))='base' or string(name(@*[27]))='stringIdentifier' or string(name(@*[27]))='expectedLength' or string(name(@*[27]))='patternMask' or string(name(@*[27]))='placeholderText' or string(name(@*[27]))='maxStrings' or string(name(@*[27]))='minStrings' or string(name(@*[27]))='expectedLines' or string(name(@*[27]))='format' or string(name(@*[27]))='id' or string(name(@*[27]))='class' or string(name(@*[27]))='xml:lang' or string(name(@*[27]))='label' or string(name(@*[27]))='xml:base' or string(name(@*[27]))='responseIdentifier' or string(name(@*[27]))='dir' or string(name(@*[27]))='role' or string(name(@*[27]))='aria-controls' or string(name(@*[27]))='aria-describedby' or string(name(@*[27]))='aria-flowsto' or string(name(@*[27]))='aria-label' or string(name(@*[27]))='aria-labelledby' or string(name(@*[27]))='aria-level' or string(name(@*[27]))='aria-live' or string(name(@*[27]))='aria-orientation' or string(name(@*[27]))='aria-owns' or starts-with(name(@*[27]), 'data-')">
                            [RULE GLOBAL ELEMENT (extendedTextInteraction): Assertion 27] Invalid XML attribute in position 27 with name of <sch:value-of select="string(name(@*[27]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:feedbackBlock">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='outcomeIdentifier' or string(name(@*[1]))='identifier' or string(name(@*[1]))='showHide' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='outcomeIdentifier' or string(name(@*[2]))='identifier' or string(name(@*[2]))='showHide' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='outcomeIdentifier' or string(name(@*[3]))='identifier' or string(name(@*[3]))='showHide' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='outcomeIdentifier' or string(name(@*[4]))='identifier' or string(name(@*[4]))='showHide' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='outcomeIdentifier' or string(name(@*[5]))='identifier' or string(name(@*[5]))='showHide' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='outcomeIdentifier' or string(name(@*[6]))='identifier' or string(name(@*[6]))='showHide' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='outcomeIdentifier' or string(name(@*[7]))='identifier' or string(name(@*[7]))='showHide' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='outcomeIdentifier' or string(name(@*[8]))='identifier' or string(name(@*[8]))='showHide' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='outcomeIdentifier' or string(name(@*[9]))='identifier' or string(name(@*[9]))='showHide' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='outcomeIdentifier' or string(name(@*[10]))='identifier' or string(name(@*[10]))='showHide' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='outcomeIdentifier' or string(name(@*[11]))='identifier' or string(name(@*[11]))='showHide' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='outcomeIdentifier' or string(name(@*[12]))='identifier' or string(name(@*[12]))='showHide' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='outcomeIdentifier' or string(name(@*[13]))='identifier' or string(name(@*[13]))='showHide' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='outcomeIdentifier' or string(name(@*[14]))='identifier' or string(name(@*[14]))='showHide' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='outcomeIdentifier' or string(name(@*[15]))='identifier' or string(name(@*[15]))='showHide' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='outcomeIdentifier' or string(name(@*[16]))='identifier' or string(name(@*[16]))='showHide' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='outcomeIdentifier' or string(name(@*[17]))='identifier' or string(name(@*[17]))='showHide' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='outcomeIdentifier' or string(name(@*[18]))='identifier' or string(name(@*[18]))='showHide' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='outcomeIdentifier' or string(name(@*[19]))='identifier' or string(name(@*[19]))='showHide' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='outcomeIdentifier' or string(name(@*[20]))='identifier' or string(name(@*[20]))='showHide' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackBlock): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:feedbackInline">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='outcomeIdentifier' or string(name(@*[1]))='identifier' or string(name(@*[1]))='showHide' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='outcomeIdentifier' or string(name(@*[2]))='identifier' or string(name(@*[2]))='showHide' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='outcomeIdentifier' or string(name(@*[3]))='identifier' or string(name(@*[3]))='showHide' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='outcomeIdentifier' or string(name(@*[4]))='identifier' or string(name(@*[4]))='showHide' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='outcomeIdentifier' or string(name(@*[5]))='identifier' or string(name(@*[5]))='showHide' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='outcomeIdentifier' or string(name(@*[6]))='identifier' or string(name(@*[6]))='showHide' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='outcomeIdentifier' or string(name(@*[7]))='identifier' or string(name(@*[7]))='showHide' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='outcomeIdentifier' or string(name(@*[8]))='identifier' or string(name(@*[8]))='showHide' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='outcomeIdentifier' or string(name(@*[9]))='identifier' or string(name(@*[9]))='showHide' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='outcomeIdentifier' or string(name(@*[10]))='identifier' or string(name(@*[10]))='showHide' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='outcomeIdentifier' or string(name(@*[11]))='identifier' or string(name(@*[11]))='showHide' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='outcomeIdentifier' or string(name(@*[12]))='identifier' or string(name(@*[12]))='showHide' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='outcomeIdentifier' or string(name(@*[13]))='identifier' or string(name(@*[13]))='showHide' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='outcomeIdentifier' or string(name(@*[14]))='identifier' or string(name(@*[14]))='showHide' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='outcomeIdentifier' or string(name(@*[15]))='identifier' or string(name(@*[15]))='showHide' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='outcomeIdentifier' or string(name(@*[16]))='identifier' or string(name(@*[16]))='showHide' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='outcomeIdentifier' or string(name(@*[17]))='identifier' or string(name(@*[17]))='showHide' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='outcomeIdentifier' or string(name(@*[18]))='identifier' or string(name(@*[18]))='showHide' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='outcomeIdentifier' or string(name(@*[19]))='identifier' or string(name(@*[19]))='showHide' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='outcomeIdentifier' or string(name(@*[20]))='identifier' or string(name(@*[20]))='showHide' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (feedbackInline): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:gap">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='identifier' or string(name(@*[1]))='templateIdentifier' or string(name(@*[1]))='showHide' or string(name(@*[1]))='matchGroup' or string(name(@*[1]))='required' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='identifier' or string(name(@*[2]))='templateIdentifier' or string(name(@*[2]))='showHide' or string(name(@*[2]))='matchGroup' or string(name(@*[2]))='required' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='identifier' or string(name(@*[3]))='templateIdentifier' or string(name(@*[3]))='showHide' or string(name(@*[3]))='matchGroup' or string(name(@*[3]))='required' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='identifier' or string(name(@*[4]))='templateIdentifier' or string(name(@*[4]))='showHide' or string(name(@*[4]))='matchGroup' or string(name(@*[4]))='required' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='identifier' or string(name(@*[5]))='templateIdentifier' or string(name(@*[5]))='showHide' or string(name(@*[5]))='matchGroup' or string(name(@*[5]))='required' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='identifier' or string(name(@*[6]))='templateIdentifier' or string(name(@*[6]))='showHide' or string(name(@*[6]))='matchGroup' or string(name(@*[6]))='required' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='identifier' or string(name(@*[7]))='templateIdentifier' or string(name(@*[7]))='showHide' or string(name(@*[7]))='matchGroup' or string(name(@*[7]))='required' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='identifier' or string(name(@*[8]))='templateIdentifier' or string(name(@*[8]))='showHide' or string(name(@*[8]))='matchGroup' or string(name(@*[8]))='required' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='identifier' or string(name(@*[9]))='templateIdentifier' or string(name(@*[9]))='showHide' or string(name(@*[9]))='matchGroup' or string(name(@*[9]))='required' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='identifier' or string(name(@*[10]))='templateIdentifier' or string(name(@*[10]))='showHide' or string(name(@*[10]))='matchGroup' or string(name(@*[10]))='required' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='identifier' or string(name(@*[11]))='templateIdentifier' or string(name(@*[11]))='showHide' or string(name(@*[11]))='matchGroup' or string(name(@*[11]))='required' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='identifier' or string(name(@*[12]))='templateIdentifier' or string(name(@*[12]))='showHide' or string(name(@*[12]))='matchGroup' or string(name(@*[12]))='required' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='identifier' or string(name(@*[13]))='templateIdentifier' or string(name(@*[13]))='showHide' or string(name(@*[13]))='matchGroup' or string(name(@*[13]))='required' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='identifier' or string(name(@*[14]))='templateIdentifier' or string(name(@*[14]))='showHide' or string(name(@*[14]))='matchGroup' or string(name(@*[14]))='required' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='identifier' or string(name(@*[15]))='templateIdentifier' or string(name(@*[15]))='showHide' or string(name(@*[15]))='matchGroup' or string(name(@*[15]))='required' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='identifier' or string(name(@*[16]))='templateIdentifier' or string(name(@*[16]))='showHide' or string(name(@*[16]))='matchGroup' or string(name(@*[16]))='required' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='identifier' or string(name(@*[17]))='templateIdentifier' or string(name(@*[17]))='showHide' or string(name(@*[17]))='matchGroup' or string(name(@*[17]))='required' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='identifier' or string(name(@*[18]))='templateIdentifier' or string(name(@*[18]))='showHide' or string(name(@*[18]))='matchGroup' or string(name(@*[18]))='required' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='identifier' or string(name(@*[19]))='templateIdentifier' or string(name(@*[19]))='showHide' or string(name(@*[19]))='matchGroup' or string(name(@*[19]))='required' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='identifier' or string(name(@*[20]))='templateIdentifier' or string(name(@*[20]))='showHide' or string(name(@*[20]))='matchGroup' or string(name(@*[20]))='required' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='identifier' or string(name(@*[21]))='templateIdentifier' or string(name(@*[21]))='showHide' or string(name(@*[21]))='matchGroup' or string(name(@*[21]))='required' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='xml:base' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowsto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[22]))=0 or string(name(@*[22]))='identifier' or string(name(@*[22]))='templateIdentifier' or string(name(@*[22]))='showHide' or string(name(@*[22]))='matchGroup' or string(name(@*[22]))='required' or string(name(@*[22]))='id' or string(name(@*[22]))='class' or string(name(@*[22]))='xml:lang' or string(name(@*[22]))='label' or string(name(@*[22]))='xml:base' or string(name(@*[22]))='dir' or string(name(@*[22]))='role' or string(name(@*[22]))='aria-controls' or string(name(@*[22]))='aria-describedby' or string(name(@*[22]))='aria-flowsto' or string(name(@*[22]))='aria-label' or string(name(@*[22]))='aria-labelledby' or string(name(@*[22]))='aria-level' or string(name(@*[22]))='aria-live' or string(name(@*[22]))='aria-orientation' or string(name(@*[22]))='aria-owns' or starts-with(name(@*[22]), 'data-')">
                            [RULE GLOBAL ELEMENT (gap): Assertion 22] Invalid XML attribute in position 22 with name of <sch:value-of select="string(name(@*[22]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:gapImg">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='identifier' or string(name(@*[1]))='templateIdentifier' or string(name(@*[1]))='showHide' or string(name(@*[1]))='matchGroup' or string(name(@*[1]))='matchMax' or string(name(@*[1]))='matchMin' or string(name(@*[1]))='objectLabel' or string(name(@*[1]))='top' or string(name(@*[1]))='left' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='identifier' or string(name(@*[2]))='templateIdentifier' or string(name(@*[2]))='showHide' or string(name(@*[2]))='matchGroup' or string(name(@*[2]))='matchMax' or string(name(@*[2]))='matchMin' or string(name(@*[2]))='objectLabel' or string(name(@*[2]))='top' or string(name(@*[2]))='left' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='identifier' or string(name(@*[3]))='templateIdentifier' or string(name(@*[3]))='showHide' or string(name(@*[3]))='matchGroup' or string(name(@*[3]))='matchMax' or string(name(@*[3]))='matchMin' or string(name(@*[3]))='objectLabel' or string(name(@*[3]))='top' or string(name(@*[3]))='left' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='identifier' or string(name(@*[4]))='templateIdentifier' or string(name(@*[4]))='showHide' or string(name(@*[4]))='matchGroup' or string(name(@*[4]))='matchMax' or string(name(@*[4]))='matchMin' or string(name(@*[4]))='objectLabel' or string(name(@*[4]))='top' or string(name(@*[4]))='left' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='identifier' or string(name(@*[5]))='templateIdentifier' or string(name(@*[5]))='showHide' or string(name(@*[5]))='matchGroup' or string(name(@*[5]))='matchMax' or string(name(@*[5]))='matchMin' or string(name(@*[5]))='objectLabel' or string(name(@*[5]))='top' or string(name(@*[5]))='left' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='identifier' or string(name(@*[6]))='templateIdentifier' or string(name(@*[6]))='showHide' or string(name(@*[6]))='matchGroup' or string(name(@*[6]))='matchMax' or string(name(@*[6]))='matchMin' or string(name(@*[6]))='objectLabel' or string(name(@*[6]))='top' or string(name(@*[6]))='left' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='identifier' or string(name(@*[7]))='templateIdentifier' or string(name(@*[7]))='showHide' or string(name(@*[7]))='matchGroup' or string(name(@*[7]))='matchMax' or string(name(@*[7]))='matchMin' or string(name(@*[7]))='objectLabel' or string(name(@*[7]))='top' or string(name(@*[7]))='left' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='identifier' or string(name(@*[8]))='templateIdentifier' or string(name(@*[8]))='showHide' or string(name(@*[8]))='matchGroup' or string(name(@*[8]))='matchMax' or string(name(@*[8]))='matchMin' or string(name(@*[8]))='objectLabel' or string(name(@*[8]))='top' or string(name(@*[8]))='left' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='identifier' or string(name(@*[9]))='templateIdentifier' or string(name(@*[9]))='showHide' or string(name(@*[9]))='matchGroup' or string(name(@*[9]))='matchMax' or string(name(@*[9]))='matchMin' or string(name(@*[9]))='objectLabel' or string(name(@*[9]))='top' or string(name(@*[9]))='left' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='identifier' or string(name(@*[10]))='templateIdentifier' or string(name(@*[10]))='showHide' or string(name(@*[10]))='matchGroup' or string(name(@*[10]))='matchMax' or string(name(@*[10]))='matchMin' or string(name(@*[10]))='objectLabel' or string(name(@*[10]))='top' or string(name(@*[10]))='left' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='identifier' or string(name(@*[11]))='templateIdentifier' or string(name(@*[11]))='showHide' or string(name(@*[11]))='matchGroup' or string(name(@*[11]))='matchMax' or string(name(@*[11]))='matchMin' or string(name(@*[11]))='objectLabel' or string(name(@*[11]))='top' or string(name(@*[11]))='left' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='identifier' or string(name(@*[12]))='templateIdentifier' or string(name(@*[12]))='showHide' or string(name(@*[12]))='matchGroup' or string(name(@*[12]))='matchMax' or string(name(@*[12]))='matchMin' or string(name(@*[12]))='objectLabel' or string(name(@*[12]))='top' or string(name(@*[12]))='left' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='identifier' or string(name(@*[13]))='templateIdentifier' or string(name(@*[13]))='showHide' or string(name(@*[13]))='matchGroup' or string(name(@*[13]))='matchMax' or string(name(@*[13]))='matchMin' or string(name(@*[13]))='objectLabel' or string(name(@*[13]))='top' or string(name(@*[13]))='left' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='identifier' or string(name(@*[14]))='templateIdentifier' or string(name(@*[14]))='showHide' or string(name(@*[14]))='matchGroup' or string(name(@*[14]))='matchMax' or string(name(@*[14]))='matchMin' or string(name(@*[14]))='objectLabel' or string(name(@*[14]))='top' or string(name(@*[14]))='left' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='identifier' or string(name(@*[15]))='templateIdentifier' or string(name(@*[15]))='showHide' or string(name(@*[15]))='matchGroup' or string(name(@*[15]))='matchMax' or string(name(@*[15]))='matchMin' or string(name(@*[15]))='objectLabel' or string(name(@*[15]))='top' or string(name(@*[15]))='left' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='identifier' or string(name(@*[16]))='templateIdentifier' or string(name(@*[16]))='showHide' or string(name(@*[16]))='matchGroup' or string(name(@*[16]))='matchMax' or string(name(@*[16]))='matchMin' or string(name(@*[16]))='objectLabel' or string(name(@*[16]))='top' or string(name(@*[16]))='left' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='identifier' or string(name(@*[17]))='templateIdentifier' or string(name(@*[17]))='showHide' or string(name(@*[17]))='matchGroup' or string(name(@*[17]))='matchMax' or string(name(@*[17]))='matchMin' or string(name(@*[17]))='objectLabel' or string(name(@*[17]))='top' or string(name(@*[17]))='left' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='identifier' or string(name(@*[18]))='templateIdentifier' or string(name(@*[18]))='showHide' or string(name(@*[18]))='matchGroup' or string(name(@*[18]))='matchMax' or string(name(@*[18]))='matchMin' or string(name(@*[18]))='objectLabel' or string(name(@*[18]))='top' or string(name(@*[18]))='left' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='identifier' or string(name(@*[19]))='templateIdentifier' or string(name(@*[19]))='showHide' or string(name(@*[19]))='matchGroup' or string(name(@*[19]))='matchMax' or string(name(@*[19]))='matchMin' or string(name(@*[19]))='objectLabel' or string(name(@*[19]))='top' or string(name(@*[19]))='left' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='identifier' or string(name(@*[20]))='templateIdentifier' or string(name(@*[20]))='showHide' or string(name(@*[20]))='matchGroup' or string(name(@*[20]))='matchMax' or string(name(@*[20]))='matchMin' or string(name(@*[20]))='objectLabel' or string(name(@*[20]))='top' or string(name(@*[20]))='left' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='identifier' or string(name(@*[21]))='templateIdentifier' or string(name(@*[21]))='showHide' or string(name(@*[21]))='matchGroup' or string(name(@*[21]))='matchMax' or string(name(@*[21]))='matchMin' or string(name(@*[21]))='objectLabel' or string(name(@*[21]))='top' or string(name(@*[21]))='left' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[22]))=0 or string(name(@*[22]))='identifier' or string(name(@*[22]))='templateIdentifier' or string(name(@*[22]))='showHide' or string(name(@*[22]))='matchGroup' or string(name(@*[22]))='matchMax' or string(name(@*[22]))='matchMin' or string(name(@*[22]))='objectLabel' or string(name(@*[22]))='top' or string(name(@*[22]))='left' or string(name(@*[22]))='id' or string(name(@*[22]))='class' or string(name(@*[22]))='xml:lang' or string(name(@*[22]))='label' or string(name(@*[22]))='dir' or string(name(@*[22]))='role' or string(name(@*[22]))='aria-controls' or string(name(@*[22]))='aria-describedby' or string(name(@*[22]))='aria-flowto' or string(name(@*[22]))='aria-label' or string(name(@*[22]))='aria-labelledby' or string(name(@*[22]))='aria-level' or string(name(@*[22]))='aria-live' or string(name(@*[22]))='aria-orientation' or string(name(@*[22]))='aria-owns' or starts-with(name(@*[22]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 22] Invalid XML attribute in position 22 with name of <sch:value-of select="string(name(@*[22]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[23]))=0 or string(name(@*[23]))='identifier' or string(name(@*[23]))='templateIdentifier' or string(name(@*[23]))='showHide' or string(name(@*[23]))='matchGroup' or string(name(@*[23]))='matchMax' or string(name(@*[23]))='matchMin' or string(name(@*[23]))='objectLabel' or string(name(@*[23]))='top' or string(name(@*[23]))='left' or string(name(@*[23]))='id' or string(name(@*[23]))='class' or string(name(@*[23]))='xml:lang' or string(name(@*[23]))='label' or string(name(@*[23]))='dir' or string(name(@*[23]))='role' or string(name(@*[23]))='aria-controls' or string(name(@*[23]))='aria-describedby' or string(name(@*[23]))='aria-flowto' or string(name(@*[23]))='aria-label' or string(name(@*[23]))='aria-labelledby' or string(name(@*[23]))='aria-level' or string(name(@*[23]))='aria-live' or string(name(@*[23]))='aria-orientation' or string(name(@*[23]))='aria-owns' or starts-with(name(@*[23]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 23] Invalid XML attribute in position 23 with name of <sch:value-of select="string(name(@*[23]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[24]))=0 or string(name(@*[24]))='identifier' or string(name(@*[24]))='templateIdentifier' or string(name(@*[24]))='showHide' or string(name(@*[24]))='matchGroup' or string(name(@*[24]))='matchMax' or string(name(@*[24]))='matchMin' or string(name(@*[24]))='objectLabel' or string(name(@*[24]))='top' or string(name(@*[24]))='left' or string(name(@*[24]))='id' or string(name(@*[24]))='class' or string(name(@*[24]))='xml:lang' or string(name(@*[24]))='label' or string(name(@*[24]))='dir' or string(name(@*[24]))='role' or string(name(@*[24]))='aria-controls' or string(name(@*[24]))='aria-describedby' or string(name(@*[24]))='aria-flowto' or string(name(@*[24]))='aria-label' or string(name(@*[24]))='aria-labelledby' or string(name(@*[24]))='aria-level' or string(name(@*[24]))='aria-live' or string(name(@*[24]))='aria-orientation' or string(name(@*[24]))='aria-owns' or starts-with(name(@*[24]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 24] Invalid XML attribute in position 24 with name of <sch:value-of select="string(name(@*[24]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[25]))=0 or string(name(@*[25]))='identifier' or string(name(@*[25]))='templateIdentifier' or string(name(@*[25]))='showHide' or string(name(@*[25]))='matchGroup' or string(name(@*[25]))='matchMax' or string(name(@*[25]))='matchMin' or string(name(@*[25]))='objectLabel' or string(name(@*[25]))='top' or string(name(@*[25]))='left' or string(name(@*[25]))='id' or string(name(@*[25]))='class' or string(name(@*[25]))='xml:lang' or string(name(@*[25]))='label' or string(name(@*[25]))='dir' or string(name(@*[25]))='role' or string(name(@*[25]))='aria-controls' or string(name(@*[25]))='aria-describedby' or string(name(@*[25]))='aria-flowto' or string(name(@*[25]))='aria-label' or string(name(@*[25]))='aria-labelledby' or string(name(@*[25]))='aria-level' or string(name(@*[25]))='aria-live' or string(name(@*[25]))='aria-orientation' or string(name(@*[25]))='aria-owns' or starts-with(name(@*[25]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapImg): Assertion 25] Invalid XML attribute in position 25 with name of <sch:value-of select="string(name(@*[25]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:gapMatchInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='shuffle' or string(name(@*[1]))='minAssociations' or string(name(@*[1]))='maxAssociations' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='shuffle' or string(name(@*[2]))='minAssociations' or string(name(@*[2]))='maxAssociations' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='shuffle' or string(name(@*[3]))='minAssociations' or string(name(@*[3]))='maxAssociations' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='shuffle' or string(name(@*[4]))='minAssociations' or string(name(@*[4]))='maxAssociations' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='shuffle' or string(name(@*[5]))='minAssociations' or string(name(@*[5]))='maxAssociations' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='shuffle' or string(name(@*[6]))='minAssociations' or string(name(@*[6]))='maxAssociations' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='shuffle' or string(name(@*[7]))='minAssociations' or string(name(@*[7]))='maxAssociations' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='shuffle' or string(name(@*[8]))='minAssociations' or string(name(@*[8]))='maxAssociations' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='shuffle' or string(name(@*[9]))='minAssociations' or string(name(@*[9]))='maxAssociations' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='shuffle' or string(name(@*[10]))='minAssociations' or string(name(@*[10]))='maxAssociations' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='shuffle' or string(name(@*[11]))='minAssociations' or string(name(@*[11]))='maxAssociations' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='shuffle' or string(name(@*[12]))='minAssociations' or string(name(@*[12]))='maxAssociations' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='shuffle' or string(name(@*[13]))='minAssociations' or string(name(@*[13]))='maxAssociations' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='shuffle' or string(name(@*[14]))='minAssociations' or string(name(@*[14]))='maxAssociations' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='shuffle' or string(name(@*[15]))='minAssociations' or string(name(@*[15]))='maxAssociations' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='shuffle' or string(name(@*[16]))='minAssociations' or string(name(@*[16]))='maxAssociations' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='shuffle' or string(name(@*[17]))='minAssociations' or string(name(@*[17]))='maxAssociations' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='shuffle' or string(name(@*[18]))='minAssociations' or string(name(@*[18]))='maxAssociations' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='shuffle' or string(name(@*[19]))='minAssociations' or string(name(@*[19]))='maxAssociations' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='shuffle' or string(name(@*[20]))='minAssociations' or string(name(@*[20]))='maxAssociations' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='shuffle' or string(name(@*[21]))='minAssociations' or string(name(@*[21]))='maxAssociations' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='xml:base' or string(name(@*[21]))='responseIdentifier' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowsto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapMatchInteraction): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:gapText">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='identifier' or string(name(@*[1]))='templateIdentifier' or string(name(@*[1]))='showHide' or string(name(@*[1]))='matchGroup' or string(name(@*[1]))='matchMax' or string(name(@*[1]))='matchMin' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='identifier' or string(name(@*[2]))='templateIdentifier' or string(name(@*[2]))='showHide' or string(name(@*[2]))='matchGroup' or string(name(@*[2]))='matchMax' or string(name(@*[2]))='matchMin' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='identifier' or string(name(@*[3]))='templateIdentifier' or string(name(@*[3]))='showHide' or string(name(@*[3]))='matchGroup' or string(name(@*[3]))='matchMax' or string(name(@*[3]))='matchMin' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='identifier' or string(name(@*[4]))='templateIdentifier' or string(name(@*[4]))='showHide' or string(name(@*[4]))='matchGroup' or string(name(@*[4]))='matchMax' or string(name(@*[4]))='matchMin' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='identifier' or string(name(@*[5]))='templateIdentifier' or string(name(@*[5]))='showHide' or string(name(@*[5]))='matchGroup' or string(name(@*[5]))='matchMax' or string(name(@*[5]))='matchMin' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='identifier' or string(name(@*[6]))='templateIdentifier' or string(name(@*[6]))='showHide' or string(name(@*[6]))='matchGroup' or string(name(@*[6]))='matchMax' or string(name(@*[6]))='matchMin' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='identifier' or string(name(@*[7]))='templateIdentifier' or string(name(@*[7]))='showHide' or string(name(@*[7]))='matchGroup' or string(name(@*[7]))='matchMax' or string(name(@*[7]))='matchMin' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='identifier' or string(name(@*[8]))='templateIdentifier' or string(name(@*[8]))='showHide' or string(name(@*[8]))='matchGroup' or string(name(@*[8]))='matchMax' or string(name(@*[8]))='matchMin' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='identifier' or string(name(@*[9]))='templateIdentifier' or string(name(@*[9]))='showHide' or string(name(@*[9]))='matchGroup' or string(name(@*[9]))='matchMax' or string(name(@*[9]))='matchMin' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='identifier' or string(name(@*[10]))='templateIdentifier' or string(name(@*[10]))='showHide' or string(name(@*[10]))='matchGroup' or string(name(@*[10]))='matchMax' or string(name(@*[10]))='matchMin' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='identifier' or string(name(@*[11]))='templateIdentifier' or string(name(@*[11]))='showHide' or string(name(@*[11]))='matchGroup' or string(name(@*[11]))='matchMax' or string(name(@*[11]))='matchMin' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='identifier' or string(name(@*[12]))='templateIdentifier' or string(name(@*[12]))='showHide' or string(name(@*[12]))='matchGroup' or string(name(@*[12]))='matchMax' or string(name(@*[12]))='matchMin' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='identifier' or string(name(@*[13]))='templateIdentifier' or string(name(@*[13]))='showHide' or string(name(@*[13]))='matchGroup' or string(name(@*[13]))='matchMax' or string(name(@*[13]))='matchMin' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='identifier' or string(name(@*[14]))='templateIdentifier' or string(name(@*[14]))='showHide' or string(name(@*[14]))='matchGroup' or string(name(@*[14]))='matchMax' or string(name(@*[14]))='matchMin' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='identifier' or string(name(@*[15]))='templateIdentifier' or string(name(@*[15]))='showHide' or string(name(@*[15]))='matchGroup' or string(name(@*[15]))='matchMax' or string(name(@*[15]))='matchMin' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='identifier' or string(name(@*[16]))='templateIdentifier' or string(name(@*[16]))='showHide' or string(name(@*[16]))='matchGroup' or string(name(@*[16]))='matchMax' or string(name(@*[16]))='matchMin' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='identifier' or string(name(@*[17]))='templateIdentifier' or string(name(@*[17]))='showHide' or string(name(@*[17]))='matchGroup' or string(name(@*[17]))='matchMax' or string(name(@*[17]))='matchMin' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='identifier' or string(name(@*[18]))='templateIdentifier' or string(name(@*[18]))='showHide' or string(name(@*[18]))='matchGroup' or string(name(@*[18]))='matchMax' or string(name(@*[18]))='matchMin' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='identifier' or string(name(@*[19]))='templateIdentifier' or string(name(@*[19]))='showHide' or string(name(@*[19]))='matchGroup' or string(name(@*[19]))='matchMax' or string(name(@*[19]))='matchMin' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='identifier' or string(name(@*[20]))='templateIdentifier' or string(name(@*[20]))='showHide' or string(name(@*[20]))='matchGroup' or string(name(@*[20]))='matchMax' or string(name(@*[20]))='matchMin' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='identifier' or string(name(@*[21]))='templateIdentifier' or string(name(@*[21]))='showHide' or string(name(@*[21]))='matchGroup' or string(name(@*[21]))='matchMax' or string(name(@*[21]))='matchMin' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[22]))=0 or string(name(@*[22]))='identifier' or string(name(@*[22]))='templateIdentifier' or string(name(@*[22]))='showHide' or string(name(@*[22]))='matchGroup' or string(name(@*[22]))='matchMax' or string(name(@*[22]))='matchMin' or string(name(@*[22]))='id' or string(name(@*[22]))='class' or string(name(@*[22]))='xml:lang' or string(name(@*[22]))='label' or string(name(@*[22]))='dir' or string(name(@*[22]))='role' or string(name(@*[22]))='aria-controls' or string(name(@*[22]))='aria-describedby' or string(name(@*[22]))='aria-flowto' or string(name(@*[22]))='aria-label' or string(name(@*[22]))='aria-labelledby' or string(name(@*[22]))='aria-level' or string(name(@*[22]))='aria-live' or string(name(@*[22]))='aria-orientation' or string(name(@*[22]))='aria-owns' or starts-with(name(@*[22]), 'data-')">
                            [RULE GLOBAL ELEMENT (gapText): Assertion 22] Invalid XML attribute in position 22 with name of <sch:value-of select="string(name(@*[22]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:graphicAssociateInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='minAssociations' or string(name(@*[1]))='maxAssociations' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='minAssociations' or string(name(@*[2]))='maxAssociations' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='minAssociations' or string(name(@*[3]))='maxAssociations' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='minAssociations' or string(name(@*[4]))='maxAssociations' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='minAssociations' or string(name(@*[5]))='maxAssociations' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='minAssociations' or string(name(@*[6]))='maxAssociations' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='minAssociations' or string(name(@*[7]))='maxAssociations' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='minAssociations' or string(name(@*[8]))='maxAssociations' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='minAssociations' or string(name(@*[9]))='maxAssociations' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='minAssociations' or string(name(@*[10]))='maxAssociations' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='minAssociations' or string(name(@*[11]))='maxAssociations' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='minAssociations' or string(name(@*[12]))='maxAssociations' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='minAssociations' or string(name(@*[13]))='maxAssociations' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='minAssociations' or string(name(@*[14]))='maxAssociations' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='minAssociations' or string(name(@*[15]))='maxAssociations' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='minAssociations' or string(name(@*[16]))='maxAssociations' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='minAssociations' or string(name(@*[17]))='maxAssociations' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='minAssociations' or string(name(@*[18]))='maxAssociations' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='minAssociations' or string(name(@*[19]))='maxAssociations' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='minAssociations' or string(name(@*[20]))='maxAssociations' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicAssociateInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:graphicGapMatchInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='minAssociations' or string(name(@*[1]))='maxAssociations' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='minAssociations' or string(name(@*[2]))='maxAssociations' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='minAssociations' or string(name(@*[3]))='maxAssociations' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='minAssociations' or string(name(@*[4]))='maxAssociations' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='minAssociations' or string(name(@*[5]))='maxAssociations' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='minAssociations' or string(name(@*[6]))='maxAssociations' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='minAssociations' or string(name(@*[7]))='maxAssociations' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='minAssociations' or string(name(@*[8]))='maxAssociations' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='minAssociations' or string(name(@*[9]))='maxAssociations' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='minAssociations' or string(name(@*[10]))='maxAssociations' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='minAssociations' or string(name(@*[11]))='maxAssociations' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='minAssociations' or string(name(@*[12]))='maxAssociations' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='minAssociations' or string(name(@*[13]))='maxAssociations' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='minAssociations' or string(name(@*[14]))='maxAssociations' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='minAssociations' or string(name(@*[15]))='maxAssociations' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='minAssociations' or string(name(@*[16]))='maxAssociations' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='minAssociations' or string(name(@*[17]))='maxAssociations' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='minAssociations' or string(name(@*[18]))='maxAssociations' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='minAssociations' or string(name(@*[19]))='maxAssociations' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='minAssociations' or string(name(@*[20]))='maxAssociations' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicGapMatchInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:graphicOrderInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='minChoices' or string(name(@*[1]))='maxChoices' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='minChoices' or string(name(@*[2]))='maxChoices' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='minChoices' or string(name(@*[3]))='maxChoices' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='minChoices' or string(name(@*[4]))='maxChoices' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='minChoices' or string(name(@*[5]))='maxChoices' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='minChoices' or string(name(@*[6]))='maxChoices' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='minChoices' or string(name(@*[7]))='maxChoices' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='minChoices' or string(name(@*[8]))='maxChoices' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='minChoices' or string(name(@*[9]))='maxChoices' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='minChoices' or string(name(@*[10]))='maxChoices' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='minChoices' or string(name(@*[11]))='maxChoices' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='minChoices' or string(name(@*[12]))='maxChoices' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='minChoices' or string(name(@*[13]))='maxChoices' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='minChoices' or string(name(@*[14]))='maxChoices' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='minChoices' or string(name(@*[15]))='maxChoices' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='minChoices' or string(name(@*[16]))='maxChoices' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='minChoices' or string(name(@*[17]))='maxChoices' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='minChoices' or string(name(@*[18]))='maxChoices' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='minChoices' or string(name(@*[19]))='maxChoices' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='minChoices' or string(name(@*[20]))='maxChoices' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (graphicOrderInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:h1">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (h1): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:h2">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (h2): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:h3">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (h3): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:h4">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (h4): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:h5">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (h5): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:h6">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (h6): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:hotspotChoice">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='identifier' or string(name(@*[1]))='templateIdentifier' or string(name(@*[1]))='showHide' or string(name(@*[1]))='shape' or string(name(@*[1]))='coords' or string(name(@*[1]))='hotspotLabel' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='identifier' or string(name(@*[2]))='templateIdentifier' or string(name(@*[2]))='showHide' or string(name(@*[2]))='shape' or string(name(@*[2]))='coords' or string(name(@*[2]))='hotspotLabel' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='identifier' or string(name(@*[3]))='templateIdentifier' or string(name(@*[3]))='showHide' or string(name(@*[3]))='shape' or string(name(@*[3]))='coords' or string(name(@*[3]))='hotspotLabel' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='identifier' or string(name(@*[4]))='templateIdentifier' or string(name(@*[4]))='showHide' or string(name(@*[4]))='shape' or string(name(@*[4]))='coords' or string(name(@*[4]))='hotspotLabel' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='identifier' or string(name(@*[5]))='templateIdentifier' or string(name(@*[5]))='showHide' or string(name(@*[5]))='shape' or string(name(@*[5]))='coords' or string(name(@*[5]))='hotspotLabel' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='identifier' or string(name(@*[6]))='templateIdentifier' or string(name(@*[6]))='showHide' or string(name(@*[6]))='shape' or string(name(@*[6]))='coords' or string(name(@*[6]))='hotspotLabel' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='identifier' or string(name(@*[7]))='templateIdentifier' or string(name(@*[7]))='showHide' or string(name(@*[7]))='shape' or string(name(@*[7]))='coords' or string(name(@*[7]))='hotspotLabel' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='identifier' or string(name(@*[8]))='templateIdentifier' or string(name(@*[8]))='showHide' or string(name(@*[8]))='shape' or string(name(@*[8]))='coords' or string(name(@*[8]))='hotspotLabel' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='identifier' or string(name(@*[9]))='templateIdentifier' or string(name(@*[9]))='showHide' or string(name(@*[9]))='shape' or string(name(@*[9]))='coords' or string(name(@*[9]))='hotspotLabel' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='identifier' or string(name(@*[10]))='templateIdentifier' or string(name(@*[10]))='showHide' or string(name(@*[10]))='shape' or string(name(@*[10]))='coords' or string(name(@*[10]))='hotspotLabel' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='identifier' or string(name(@*[11]))='templateIdentifier' or string(name(@*[11]))='showHide' or string(name(@*[11]))='shape' or string(name(@*[11]))='coords' or string(name(@*[11]))='hotspotLabel' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='identifier' or string(name(@*[12]))='templateIdentifier' or string(name(@*[12]))='showHide' or string(name(@*[12]))='shape' or string(name(@*[12]))='coords' or string(name(@*[12]))='hotspotLabel' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='identifier' or string(name(@*[13]))='templateIdentifier' or string(name(@*[13]))='showHide' or string(name(@*[13]))='shape' or string(name(@*[13]))='coords' or string(name(@*[13]))='hotspotLabel' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='identifier' or string(name(@*[14]))='templateIdentifier' or string(name(@*[14]))='showHide' or string(name(@*[14]))='shape' or string(name(@*[14]))='coords' or string(name(@*[14]))='hotspotLabel' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='identifier' or string(name(@*[15]))='templateIdentifier' or string(name(@*[15]))='showHide' or string(name(@*[15]))='shape' or string(name(@*[15]))='coords' or string(name(@*[15]))='hotspotLabel' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='identifier' or string(name(@*[16]))='templateIdentifier' or string(name(@*[16]))='showHide' or string(name(@*[16]))='shape' or string(name(@*[16]))='coords' or string(name(@*[16]))='hotspotLabel' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='identifier' or string(name(@*[17]))='templateIdentifier' or string(name(@*[17]))='showHide' or string(name(@*[17]))='shape' or string(name(@*[17]))='coords' or string(name(@*[17]))='hotspotLabel' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='identifier' or string(name(@*[18]))='templateIdentifier' or string(name(@*[18]))='showHide' or string(name(@*[18]))='shape' or string(name(@*[18]))='coords' or string(name(@*[18]))='hotspotLabel' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='identifier' or string(name(@*[19]))='templateIdentifier' or string(name(@*[19]))='showHide' or string(name(@*[19]))='shape' or string(name(@*[19]))='coords' or string(name(@*[19]))='hotspotLabel' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='identifier' or string(name(@*[20]))='templateIdentifier' or string(name(@*[20]))='showHide' or string(name(@*[20]))='shape' or string(name(@*[20]))='coords' or string(name(@*[20]))='hotspotLabel' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='identifier' or string(name(@*[21]))='templateIdentifier' or string(name(@*[21]))='showHide' or string(name(@*[21]))='shape' or string(name(@*[21]))='coords' or string(name(@*[21]))='hotspotLabel' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='xml:base' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowsto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[22]))=0 or string(name(@*[22]))='identifier' or string(name(@*[22]))='templateIdentifier' or string(name(@*[22]))='showHide' or string(name(@*[22]))='shape' or string(name(@*[22]))='coords' or string(name(@*[22]))='hotspotLabel' or string(name(@*[22]))='id' or string(name(@*[22]))='class' or string(name(@*[22]))='xml:lang' or string(name(@*[22]))='label' or string(name(@*[22]))='xml:base' or string(name(@*[22]))='dir' or string(name(@*[22]))='role' or string(name(@*[22]))='aria-controls' or string(name(@*[22]))='aria-describedby' or string(name(@*[22]))='aria-flowsto' or string(name(@*[22]))='aria-label' or string(name(@*[22]))='aria-labelledby' or string(name(@*[22]))='aria-level' or string(name(@*[22]))='aria-live' or string(name(@*[22]))='aria-orientation' or string(name(@*[22]))='aria-owns' or starts-with(name(@*[22]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 22] Invalid XML attribute in position 22 with name of <sch:value-of select="string(name(@*[22]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[23]))=0 or string(name(@*[23]))='identifier' or string(name(@*[23]))='templateIdentifier' or string(name(@*[23]))='showHide' or string(name(@*[23]))='shape' or string(name(@*[23]))='coords' or string(name(@*[23]))='hotspotLabel' or string(name(@*[23]))='id' or string(name(@*[23]))='class' or string(name(@*[23]))='xml:lang' or string(name(@*[23]))='label' or string(name(@*[23]))='xml:base' or string(name(@*[23]))='dir' or string(name(@*[23]))='role' or string(name(@*[23]))='aria-controls' or string(name(@*[23]))='aria-describedby' or string(name(@*[23]))='aria-flowsto' or string(name(@*[23]))='aria-label' or string(name(@*[23]))='aria-labelledby' or string(name(@*[23]))='aria-level' or string(name(@*[23]))='aria-live' or string(name(@*[23]))='aria-orientation' or string(name(@*[23]))='aria-owns' or starts-with(name(@*[23]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotChoice): Assertion 23] Invalid XML attribute in position 23 with name of <sch:value-of select="string(name(@*[23]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:hotspotInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='minChoices' or string(name(@*[1]))='maxChoices' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='minChoices' or string(name(@*[2]))='maxChoices' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='minChoices' or string(name(@*[3]))='maxChoices' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='minChoices' or string(name(@*[4]))='maxChoices' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='minChoices' or string(name(@*[5]))='maxChoices' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='minChoices' or string(name(@*[6]))='maxChoices' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='minChoices' or string(name(@*[7]))='maxChoices' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='minChoices' or string(name(@*[8]))='maxChoices' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='minChoices' or string(name(@*[9]))='maxChoices' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='minChoices' or string(name(@*[10]))='maxChoices' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='minChoices' or string(name(@*[11]))='maxChoices' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='minChoices' or string(name(@*[12]))='maxChoices' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='minChoices' or string(name(@*[13]))='maxChoices' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='minChoices' or string(name(@*[14]))='maxChoices' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='minChoices' or string(name(@*[15]))='maxChoices' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='minChoices' or string(name(@*[16]))='maxChoices' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='minChoices' or string(name(@*[17]))='maxChoices' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='minChoices' or string(name(@*[18]))='maxChoices' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='minChoices' or string(name(@*[19]))='maxChoices' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='minChoices' or string(name(@*[20]))='maxChoices' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (hotspotInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:hottext">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='identifier' or string(name(@*[1]))='templateIdentifier' or string(name(@*[1]))='showHide' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='identifier' or string(name(@*[2]))='templateIdentifier' or string(name(@*[2]))='showHide' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='identifier' or string(name(@*[3]))='templateIdentifier' or string(name(@*[3]))='showHide' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='identifier' or string(name(@*[4]))='templateIdentifier' or string(name(@*[4]))='showHide' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='identifier' or string(name(@*[5]))='templateIdentifier' or string(name(@*[5]))='showHide' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='identifier' or string(name(@*[6]))='templateIdentifier' or string(name(@*[6]))='showHide' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='identifier' or string(name(@*[7]))='templateIdentifier' or string(name(@*[7]))='showHide' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='identifier' or string(name(@*[8]))='templateIdentifier' or string(name(@*[8]))='showHide' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='identifier' or string(name(@*[9]))='templateIdentifier' or string(name(@*[9]))='showHide' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='identifier' or string(name(@*[10]))='templateIdentifier' or string(name(@*[10]))='showHide' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='identifier' or string(name(@*[11]))='templateIdentifier' or string(name(@*[11]))='showHide' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='identifier' or string(name(@*[12]))='templateIdentifier' or string(name(@*[12]))='showHide' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='identifier' or string(name(@*[13]))='templateIdentifier' or string(name(@*[13]))='showHide' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='identifier' or string(name(@*[14]))='templateIdentifier' or string(name(@*[14]))='showHide' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='identifier' or string(name(@*[15]))='templateIdentifier' or string(name(@*[15]))='showHide' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='identifier' or string(name(@*[16]))='templateIdentifier' or string(name(@*[16]))='showHide' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='identifier' or string(name(@*[17]))='templateIdentifier' or string(name(@*[17]))='showHide' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='identifier' or string(name(@*[18]))='templateIdentifier' or string(name(@*[18]))='showHide' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='identifier' or string(name(@*[19]))='templateIdentifier' or string(name(@*[19]))='showHide' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='identifier' or string(name(@*[20]))='templateIdentifier' or string(name(@*[20]))='showHide' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottext): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:hottextInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='maxChoices' or string(name(@*[1]))='minChoices' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='maxChoices' or string(name(@*[2]))='minChoices' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='maxChoices' or string(name(@*[3]))='minChoices' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='maxChoices' or string(name(@*[4]))='minChoices' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='maxChoices' or string(name(@*[5]))='minChoices' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='maxChoices' or string(name(@*[6]))='minChoices' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='maxChoices' or string(name(@*[7]))='minChoices' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='maxChoices' or string(name(@*[8]))='minChoices' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='maxChoices' or string(name(@*[9]))='minChoices' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='maxChoices' or string(name(@*[10]))='minChoices' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='maxChoices' or string(name(@*[11]))='minChoices' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='maxChoices' or string(name(@*[12]))='minChoices' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='maxChoices' or string(name(@*[13]))='minChoices' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='maxChoices' or string(name(@*[14]))='minChoices' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='maxChoices' or string(name(@*[15]))='minChoices' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='maxChoices' or string(name(@*[16]))='minChoices' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='maxChoices' or string(name(@*[17]))='minChoices' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='maxChoices' or string(name(@*[18]))='minChoices' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='maxChoices' or string(name(@*[19]))='minChoices' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='maxChoices' or string(name(@*[20]))='minChoices' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (hottextInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:hr">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (hr): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:i">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (i): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:img">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='src' or string(name(@*[1]))='alt' or string(name(@*[1]))='longdesc' or string(name(@*[1]))='height' or string(name(@*[1]))='width' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='src' or string(name(@*[2]))='alt' or string(name(@*[2]))='longdesc' or string(name(@*[2]))='height' or string(name(@*[2]))='width' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='src' or string(name(@*[3]))='alt' or string(name(@*[3]))='longdesc' or string(name(@*[3]))='height' or string(name(@*[3]))='width' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='src' or string(name(@*[4]))='alt' or string(name(@*[4]))='longdesc' or string(name(@*[4]))='height' or string(name(@*[4]))='width' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='src' or string(name(@*[5]))='alt' or string(name(@*[5]))='longdesc' or string(name(@*[5]))='height' or string(name(@*[5]))='width' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='src' or string(name(@*[6]))='alt' or string(name(@*[6]))='longdesc' or string(name(@*[6]))='height' or string(name(@*[6]))='width' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='src' or string(name(@*[7]))='alt' or string(name(@*[7]))='longdesc' or string(name(@*[7]))='height' or string(name(@*[7]))='width' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='src' or string(name(@*[8]))='alt' or string(name(@*[8]))='longdesc' or string(name(@*[8]))='height' or string(name(@*[8]))='width' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='src' or string(name(@*[9]))='alt' or string(name(@*[9]))='longdesc' or string(name(@*[9]))='height' or string(name(@*[9]))='width' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='src' or string(name(@*[10]))='alt' or string(name(@*[10]))='longdesc' or string(name(@*[10]))='height' or string(name(@*[10]))='width' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='src' or string(name(@*[11]))='alt' or string(name(@*[11]))='longdesc' or string(name(@*[11]))='height' or string(name(@*[11]))='width' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='src' or string(name(@*[12]))='alt' or string(name(@*[12]))='longdesc' or string(name(@*[12]))='height' or string(name(@*[12]))='width' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='src' or string(name(@*[13]))='alt' or string(name(@*[13]))='longdesc' or string(name(@*[13]))='height' or string(name(@*[13]))='width' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='src' or string(name(@*[14]))='alt' or string(name(@*[14]))='longdesc' or string(name(@*[14]))='height' or string(name(@*[14]))='width' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='src' or string(name(@*[15]))='alt' or string(name(@*[15]))='longdesc' or string(name(@*[15]))='height' or string(name(@*[15]))='width' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='src' or string(name(@*[16]))='alt' or string(name(@*[16]))='longdesc' or string(name(@*[16]))='height' or string(name(@*[16]))='width' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='src' or string(name(@*[17]))='alt' or string(name(@*[17]))='longdesc' or string(name(@*[17]))='height' or string(name(@*[17]))='width' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='src' or string(name(@*[18]))='alt' or string(name(@*[18]))='longdesc' or string(name(@*[18]))='height' or string(name(@*[18]))='width' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='src' or string(name(@*[19]))='alt' or string(name(@*[19]))='longdesc' or string(name(@*[19]))='height' or string(name(@*[19]))='width' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='src' or string(name(@*[20]))='alt' or string(name(@*[20]))='longdesc' or string(name(@*[20]))='height' or string(name(@*[20]))='width' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='src' or string(name(@*[21]))='alt' or string(name(@*[21]))='longdesc' or string(name(@*[21]))='height' or string(name(@*[21]))='width' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='xml:base' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowsto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[22]))=0 or string(name(@*[22]))='src' or string(name(@*[22]))='alt' or string(name(@*[22]))='longdesc' or string(name(@*[22]))='height' or string(name(@*[22]))='width' or string(name(@*[22]))='id' or string(name(@*[22]))='class' or string(name(@*[22]))='xml:lang' or string(name(@*[22]))='label' or string(name(@*[22]))='xml:base' or string(name(@*[22]))='dir' or string(name(@*[22]))='role' or string(name(@*[22]))='aria-controls' or string(name(@*[22]))='aria-describedby' or string(name(@*[22]))='aria-flowsto' or string(name(@*[22]))='aria-label' or string(name(@*[22]))='aria-labelledby' or string(name(@*[22]))='aria-level' or string(name(@*[22]))='aria-live' or string(name(@*[22]))='aria-orientation' or string(name(@*[22]))='aria-owns' or starts-with(name(@*[22]), 'data-')">
                            [RULE GLOBAL ELEMENT (img): Assertion 22] Invalid XML attribute in position 22 with name of <sch:value-of select="string(name(@*[22]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:infoControl">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='title' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='title' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='title' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='title' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='title' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='title' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='title' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='title' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='title' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='title' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='title' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='title' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='title' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='title' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='title' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='title' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='title' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (infoControl): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:inlineChoice">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='identifier' or string(name(@*[1]))='fixed' or string(name(@*[1]))='templateIdentifier' or string(name(@*[1]))='showHide' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='identifier' or string(name(@*[2]))='fixed' or string(name(@*[2]))='templateIdentifier' or string(name(@*[2]))='showHide' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='identifier' or string(name(@*[3]))='fixed' or string(name(@*[3]))='templateIdentifier' or string(name(@*[3]))='showHide' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='identifier' or string(name(@*[4]))='fixed' or string(name(@*[4]))='templateIdentifier' or string(name(@*[4]))='showHide' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='identifier' or string(name(@*[5]))='fixed' or string(name(@*[5]))='templateIdentifier' or string(name(@*[5]))='showHide' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='identifier' or string(name(@*[6]))='fixed' or string(name(@*[6]))='templateIdentifier' or string(name(@*[6]))='showHide' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='identifier' or string(name(@*[7]))='fixed' or string(name(@*[7]))='templateIdentifier' or string(name(@*[7]))='showHide' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='identifier' or string(name(@*[8]))='fixed' or string(name(@*[8]))='templateIdentifier' or string(name(@*[8]))='showHide' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='identifier' or string(name(@*[9]))='fixed' or string(name(@*[9]))='templateIdentifier' or string(name(@*[9]))='showHide' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='identifier' or string(name(@*[10]))='fixed' or string(name(@*[10]))='templateIdentifier' or string(name(@*[10]))='showHide' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='identifier' or string(name(@*[11]))='fixed' or string(name(@*[11]))='templateIdentifier' or string(name(@*[11]))='showHide' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='identifier' or string(name(@*[12]))='fixed' or string(name(@*[12]))='templateIdentifier' or string(name(@*[12]))='showHide' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='identifier' or string(name(@*[13]))='fixed' or string(name(@*[13]))='templateIdentifier' or string(name(@*[13]))='showHide' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='identifier' or string(name(@*[14]))='fixed' or string(name(@*[14]))='templateIdentifier' or string(name(@*[14]))='showHide' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='identifier' or string(name(@*[15]))='fixed' or string(name(@*[15]))='templateIdentifier' or string(name(@*[15]))='showHide' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='identifier' or string(name(@*[16]))='fixed' or string(name(@*[16]))='templateIdentifier' or string(name(@*[16]))='showHide' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='identifier' or string(name(@*[17]))='fixed' or string(name(@*[17]))='templateIdentifier' or string(name(@*[17]))='showHide' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='identifier' or string(name(@*[18]))='fixed' or string(name(@*[18]))='templateIdentifier' or string(name(@*[18]))='showHide' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='identifier' or string(name(@*[19]))='fixed' or string(name(@*[19]))='templateIdentifier' or string(name(@*[19]))='showHide' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='identifier' or string(name(@*[20]))='fixed' or string(name(@*[20]))='templateIdentifier' or string(name(@*[20]))='showHide' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoice): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:inlineChoiceInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='shuffle' or string(name(@*[1]))='required' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='shuffle' or string(name(@*[2]))='required' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='shuffle' or string(name(@*[3]))='required' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='shuffle' or string(name(@*[4]))='required' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='shuffle' or string(name(@*[5]))='required' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='shuffle' or string(name(@*[6]))='required' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='shuffle' or string(name(@*[7]))='required' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='shuffle' or string(name(@*[8]))='required' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='shuffle' or string(name(@*[9]))='required' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='shuffle' or string(name(@*[10]))='required' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='shuffle' or string(name(@*[11]))='required' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='shuffle' or string(name(@*[12]))='required' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='shuffle' or string(name(@*[13]))='required' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='shuffle' or string(name(@*[14]))='required' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='shuffle' or string(name(@*[15]))='required' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='shuffle' or string(name(@*[16]))='required' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='shuffle' or string(name(@*[17]))='required' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='shuffle' or string(name(@*[18]))='required' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='shuffle' or string(name(@*[19]))='required' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='shuffle' or string(name(@*[20]))='required' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (inlineChoiceInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:kbd">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (kbd): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:label">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (label): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:li">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (li): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (li): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (li): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (li): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (li): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (li): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (li): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (li): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (li): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (li): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (li): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (li): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (li): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (li): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (li): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (li): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:matchInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='shuffle' or string(name(@*[1]))='maxAssociations' or string(name(@*[1]))='minAssociations' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='shuffle' or string(name(@*[2]))='maxAssociations' or string(name(@*[2]))='minAssociations' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='shuffle' or string(name(@*[3]))='maxAssociations' or string(name(@*[3]))='minAssociations' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='shuffle' or string(name(@*[4]))='maxAssociations' or string(name(@*[4]))='minAssociations' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='shuffle' or string(name(@*[5]))='maxAssociations' or string(name(@*[5]))='minAssociations' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='shuffle' or string(name(@*[6]))='maxAssociations' or string(name(@*[6]))='minAssociations' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='shuffle' or string(name(@*[7]))='maxAssociations' or string(name(@*[7]))='minAssociations' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='shuffle' or string(name(@*[8]))='maxAssociations' or string(name(@*[8]))='minAssociations' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='shuffle' or string(name(@*[9]))='maxAssociations' or string(name(@*[9]))='minAssociations' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='shuffle' or string(name(@*[10]))='maxAssociations' or string(name(@*[10]))='minAssociations' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='shuffle' or string(name(@*[11]))='maxAssociations' or string(name(@*[11]))='minAssociations' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='shuffle' or string(name(@*[12]))='maxAssociations' or string(name(@*[12]))='minAssociations' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='shuffle' or string(name(@*[13]))='maxAssociations' or string(name(@*[13]))='minAssociations' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='shuffle' or string(name(@*[14]))='maxAssociations' or string(name(@*[14]))='minAssociations' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='shuffle' or string(name(@*[15]))='maxAssociations' or string(name(@*[15]))='minAssociations' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='shuffle' or string(name(@*[16]))='maxAssociations' or string(name(@*[16]))='minAssociations' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='shuffle' or string(name(@*[17]))='maxAssociations' or string(name(@*[17]))='minAssociations' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='shuffle' or string(name(@*[18]))='maxAssociations' or string(name(@*[18]))='minAssociations' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='shuffle' or string(name(@*[19]))='maxAssociations' or string(name(@*[19]))='minAssociations' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='shuffle' or string(name(@*[20]))='maxAssociations' or string(name(@*[20]))='minAssociations' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='shuffle' or string(name(@*[21]))='maxAssociations' or string(name(@*[21]))='minAssociations' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='xml:base' or string(name(@*[21]))='responseIdentifier' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowsto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (matchInteraction): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:mediaInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='autostart' or string(name(@*[1]))='minPlays' or string(name(@*[1]))='maxPlays' or string(name(@*[1]))='loop' or string(name(@*[1]))='coords' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='autostart' or string(name(@*[2]))='minPlays' or string(name(@*[2]))='maxPlays' or string(name(@*[2]))='loop' or string(name(@*[2]))='coords' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='autostart' or string(name(@*[3]))='minPlays' or string(name(@*[3]))='maxPlays' or string(name(@*[3]))='loop' or string(name(@*[3]))='coords' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='autostart' or string(name(@*[4]))='minPlays' or string(name(@*[4]))='maxPlays' or string(name(@*[4]))='loop' or string(name(@*[4]))='coords' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='autostart' or string(name(@*[5]))='minPlays' or string(name(@*[5]))='maxPlays' or string(name(@*[5]))='loop' or string(name(@*[5]))='coords' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='autostart' or string(name(@*[6]))='minPlays' or string(name(@*[6]))='maxPlays' or string(name(@*[6]))='loop' or string(name(@*[6]))='coords' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='autostart' or string(name(@*[7]))='minPlays' or string(name(@*[7]))='maxPlays' or string(name(@*[7]))='loop' or string(name(@*[7]))='coords' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='autostart' or string(name(@*[8]))='minPlays' or string(name(@*[8]))='maxPlays' or string(name(@*[8]))='loop' or string(name(@*[8]))='coords' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='autostart' or string(name(@*[9]))='minPlays' or string(name(@*[9]))='maxPlays' or string(name(@*[9]))='loop' or string(name(@*[9]))='coords' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='autostart' or string(name(@*[10]))='minPlays' or string(name(@*[10]))='maxPlays' or string(name(@*[10]))='loop' or string(name(@*[10]))='coords' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='autostart' or string(name(@*[11]))='minPlays' or string(name(@*[11]))='maxPlays' or string(name(@*[11]))='loop' or string(name(@*[11]))='coords' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='autostart' or string(name(@*[12]))='minPlays' or string(name(@*[12]))='maxPlays' or string(name(@*[12]))='loop' or string(name(@*[12]))='coords' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='autostart' or string(name(@*[13]))='minPlays' or string(name(@*[13]))='maxPlays' or string(name(@*[13]))='loop' or string(name(@*[13]))='coords' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='autostart' or string(name(@*[14]))='minPlays' or string(name(@*[14]))='maxPlays' or string(name(@*[14]))='loop' or string(name(@*[14]))='coords' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='autostart' or string(name(@*[15]))='minPlays' or string(name(@*[15]))='maxPlays' or string(name(@*[15]))='loop' or string(name(@*[15]))='coords' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='autostart' or string(name(@*[16]))='minPlays' or string(name(@*[16]))='maxPlays' or string(name(@*[16]))='loop' or string(name(@*[16]))='coords' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='autostart' or string(name(@*[17]))='minPlays' or string(name(@*[17]))='maxPlays' or string(name(@*[17]))='loop' or string(name(@*[17]))='coords' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='autostart' or string(name(@*[18]))='minPlays' or string(name(@*[18]))='maxPlays' or string(name(@*[18]))='loop' or string(name(@*[18]))='coords' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='autostart' or string(name(@*[19]))='minPlays' or string(name(@*[19]))='maxPlays' or string(name(@*[19]))='loop' or string(name(@*[19]))='coords' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='autostart' or string(name(@*[20]))='minPlays' or string(name(@*[20]))='maxPlays' or string(name(@*[20]))='loop' or string(name(@*[20]))='coords' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='autostart' or string(name(@*[21]))='minPlays' or string(name(@*[21]))='maxPlays' or string(name(@*[21]))='loop' or string(name(@*[21]))='coords' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='xml:base' or string(name(@*[21]))='responseIdentifier' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowsto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[22]))=0 or string(name(@*[22]))='autostart' or string(name(@*[22]))='minPlays' or string(name(@*[22]))='maxPlays' or string(name(@*[22]))='loop' or string(name(@*[22]))='coords' or string(name(@*[22]))='id' or string(name(@*[22]))='class' or string(name(@*[22]))='xml:lang' or string(name(@*[22]))='label' or string(name(@*[22]))='xml:base' or string(name(@*[22]))='responseIdentifier' or string(name(@*[22]))='dir' or string(name(@*[22]))='role' or string(name(@*[22]))='aria-controls' or string(name(@*[22]))='aria-describedby' or string(name(@*[22]))='aria-flowsto' or string(name(@*[22]))='aria-label' or string(name(@*[22]))='aria-labelledby' or string(name(@*[22]))='aria-level' or string(name(@*[22]))='aria-live' or string(name(@*[22]))='aria-orientation' or string(name(@*[22]))='aria-owns' or starts-with(name(@*[22]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 22] Invalid XML attribute in position 22 with name of <sch:value-of select="string(name(@*[22]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[23]))=0 or string(name(@*[23]))='autostart' or string(name(@*[23]))='minPlays' or string(name(@*[23]))='maxPlays' or string(name(@*[23]))='loop' or string(name(@*[23]))='coords' or string(name(@*[23]))='id' or string(name(@*[23]))='class' or string(name(@*[23]))='xml:lang' or string(name(@*[23]))='label' or string(name(@*[23]))='xml:base' or string(name(@*[23]))='responseIdentifier' or string(name(@*[23]))='dir' or string(name(@*[23]))='role' or string(name(@*[23]))='aria-controls' or string(name(@*[23]))='aria-describedby' or string(name(@*[23]))='aria-flowsto' or string(name(@*[23]))='aria-label' or string(name(@*[23]))='aria-labelledby' or string(name(@*[23]))='aria-level' or string(name(@*[23]))='aria-live' or string(name(@*[23]))='aria-orientation' or string(name(@*[23]))='aria-owns' or starts-with(name(@*[23]), 'data-')">
                            [RULE GLOBAL ELEMENT (mediaInteraction): Assertion 23] Invalid XML attribute in position 23 with name of <sch:value-of select="string(name(@*[23]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:object">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='data' or string(name(@*[1]))='type' or string(name(@*[1]))='width' or string(name(@*[1]))='height' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='data' or string(name(@*[2]))='type' or string(name(@*[2]))='width' or string(name(@*[2]))='height' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='data' or string(name(@*[3]))='type' or string(name(@*[3]))='width' or string(name(@*[3]))='height' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='data' or string(name(@*[4]))='type' or string(name(@*[4]))='width' or string(name(@*[4]))='height' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='data' or string(name(@*[5]))='type' or string(name(@*[5]))='width' or string(name(@*[5]))='height' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='data' or string(name(@*[6]))='type' or string(name(@*[6]))='width' or string(name(@*[6]))='height' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='data' or string(name(@*[7]))='type' or string(name(@*[7]))='width' or string(name(@*[7]))='height' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='data' or string(name(@*[8]))='type' or string(name(@*[8]))='width' or string(name(@*[8]))='height' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='data' or string(name(@*[9]))='type' or string(name(@*[9]))='width' or string(name(@*[9]))='height' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='data' or string(name(@*[10]))='type' or string(name(@*[10]))='width' or string(name(@*[10]))='height' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='data' or string(name(@*[11]))='type' or string(name(@*[11]))='width' or string(name(@*[11]))='height' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='data' or string(name(@*[12]))='type' or string(name(@*[12]))='width' or string(name(@*[12]))='height' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='data' or string(name(@*[13]))='type' or string(name(@*[13]))='width' or string(name(@*[13]))='height' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='data' or string(name(@*[14]))='type' or string(name(@*[14]))='width' or string(name(@*[14]))='height' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='data' or string(name(@*[15]))='type' or string(name(@*[15]))='width' or string(name(@*[15]))='height' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='data' or string(name(@*[16]))='type' or string(name(@*[16]))='width' or string(name(@*[16]))='height' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='data' or string(name(@*[17]))='type' or string(name(@*[17]))='width' or string(name(@*[17]))='height' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='data' or string(name(@*[18]))='type' or string(name(@*[18]))='width' or string(name(@*[18]))='height' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='data' or string(name(@*[19]))='type' or string(name(@*[19]))='width' or string(name(@*[19]))='height' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='data' or string(name(@*[20]))='type' or string(name(@*[20]))='width' or string(name(@*[20]))='height' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='data' or string(name(@*[21]))='type' or string(name(@*[21]))='width' or string(name(@*[21]))='height' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='xml:base' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (object): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:ol">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (ol): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:orderInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='shuffle' or string(name(@*[1]))='minChoices' or string(name(@*[1]))='maxChoices' or string(name(@*[1]))='orientation' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='shuffle' or string(name(@*[2]))='minChoices' or string(name(@*[2]))='maxChoices' or string(name(@*[2]))='orientation' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='shuffle' or string(name(@*[3]))='minChoices' or string(name(@*[3]))='maxChoices' or string(name(@*[3]))='orientation' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='shuffle' or string(name(@*[4]))='minChoices' or string(name(@*[4]))='maxChoices' or string(name(@*[4]))='orientation' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='shuffle' or string(name(@*[5]))='minChoices' or string(name(@*[5]))='maxChoices' or string(name(@*[5]))='orientation' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='shuffle' or string(name(@*[6]))='minChoices' or string(name(@*[6]))='maxChoices' or string(name(@*[6]))='orientation' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='shuffle' or string(name(@*[7]))='minChoices' or string(name(@*[7]))='maxChoices' or string(name(@*[7]))='orientation' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='shuffle' or string(name(@*[8]))='minChoices' or string(name(@*[8]))='maxChoices' or string(name(@*[8]))='orientation' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='shuffle' or string(name(@*[9]))='minChoices' or string(name(@*[9]))='maxChoices' or string(name(@*[9]))='orientation' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='shuffle' or string(name(@*[10]))='minChoices' or string(name(@*[10]))='maxChoices' or string(name(@*[10]))='orientation' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='shuffle' or string(name(@*[11]))='minChoices' or string(name(@*[11]))='maxChoices' or string(name(@*[11]))='orientation' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='shuffle' or string(name(@*[12]))='minChoices' or string(name(@*[12]))='maxChoices' or string(name(@*[12]))='orientation' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='shuffle' or string(name(@*[13]))='minChoices' or string(name(@*[13]))='maxChoices' or string(name(@*[13]))='orientation' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='shuffle' or string(name(@*[14]))='minChoices' or string(name(@*[14]))='maxChoices' or string(name(@*[14]))='orientation' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='shuffle' or string(name(@*[15]))='minChoices' or string(name(@*[15]))='maxChoices' or string(name(@*[15]))='orientation' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='shuffle' or string(name(@*[16]))='minChoices' or string(name(@*[16]))='maxChoices' or string(name(@*[16]))='orientation' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='shuffle' or string(name(@*[17]))='minChoices' or string(name(@*[17]))='maxChoices' or string(name(@*[17]))='orientation' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='shuffle' or string(name(@*[18]))='minChoices' or string(name(@*[18]))='maxChoices' or string(name(@*[18]))='orientation' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='shuffle' or string(name(@*[19]))='minChoices' or string(name(@*[19]))='maxChoices' or string(name(@*[19]))='orientation' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='shuffle' or string(name(@*[20]))='minChoices' or string(name(@*[20]))='maxChoices' or string(name(@*[20]))='orientation' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='shuffle' or string(name(@*[21]))='minChoices' or string(name(@*[21]))='maxChoices' or string(name(@*[21]))='orientation' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='xml:base' or string(name(@*[21]))='responseIdentifier' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowsto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[22]))=0 or string(name(@*[22]))='shuffle' or string(name(@*[22]))='minChoices' or string(name(@*[22]))='maxChoices' or string(name(@*[22]))='orientation' or string(name(@*[22]))='id' or string(name(@*[22]))='class' or string(name(@*[22]))='xml:lang' or string(name(@*[22]))='label' or string(name(@*[22]))='xml:base' or string(name(@*[22]))='responseIdentifier' or string(name(@*[22]))='dir' or string(name(@*[22]))='role' or string(name(@*[22]))='aria-controls' or string(name(@*[22]))='aria-describedby' or string(name(@*[22]))='aria-flowsto' or string(name(@*[22]))='aria-label' or string(name(@*[22]))='aria-labelledby' or string(name(@*[22]))='aria-level' or string(name(@*[22]))='aria-live' or string(name(@*[22]))='aria-orientation' or string(name(@*[22]))='aria-owns' or starts-with(name(@*[22]), 'data-')">
                            [RULE GLOBAL ELEMENT (orderInteraction): Assertion 22] Invalid XML attribute in position 22 with name of <sch:value-of select="string(name(@*[22]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:p">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (p): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:positionObjectInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='centerPoint' or string(name(@*[1]))='minChoices' or string(name(@*[1]))='maxChoices' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='centerPoint' or string(name(@*[2]))='minChoices' or string(name(@*[2]))='maxChoices' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='centerPoint' or string(name(@*[3]))='minChoices' or string(name(@*[3]))='maxChoices' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='centerPoint' or string(name(@*[4]))='minChoices' or string(name(@*[4]))='maxChoices' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='centerPoint' or string(name(@*[5]))='minChoices' or string(name(@*[5]))='maxChoices' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='centerPoint' or string(name(@*[6]))='minChoices' or string(name(@*[6]))='maxChoices' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='centerPoint' or string(name(@*[7]))='minChoices' or string(name(@*[7]))='maxChoices' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='centerPoint' or string(name(@*[8]))='minChoices' or string(name(@*[8]))='maxChoices' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='centerPoint' or string(name(@*[9]))='minChoices' or string(name(@*[9]))='maxChoices' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='centerPoint' or string(name(@*[10]))='minChoices' or string(name(@*[10]))='maxChoices' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='centerPoint' or string(name(@*[11]))='minChoices' or string(name(@*[11]))='maxChoices' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='centerPoint' or string(name(@*[12]))='minChoices' or string(name(@*[12]))='maxChoices' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='centerPoint' or string(name(@*[13]))='minChoices' or string(name(@*[13]))='maxChoices' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='centerPoint' or string(name(@*[14]))='minChoices' or string(name(@*[14]))='maxChoices' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='centerPoint' or string(name(@*[15]))='minChoices' or string(name(@*[15]))='maxChoices' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='centerPoint' or string(name(@*[16]))='minChoices' or string(name(@*[16]))='maxChoices' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='centerPoint' or string(name(@*[17]))='minChoices' or string(name(@*[17]))='maxChoices' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='centerPoint' or string(name(@*[18]))='minChoices' or string(name(@*[18]))='maxChoices' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='centerPoint' or string(name(@*[19]))='minChoices' or string(name(@*[19]))='maxChoices' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='centerPoint' or string(name(@*[20]))='minChoices' or string(name(@*[20]))='maxChoices' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (positionObjectInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:pre">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (pre): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:prompt">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (prompt): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (prompt): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (prompt): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (prompt): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (prompt): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (prompt): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (prompt): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (prompt): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (prompt): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (prompt): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (prompt): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (prompt): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (prompt): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (prompt): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (prompt): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (prompt): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:q">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='cite' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='cite' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='cite' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='cite' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='cite' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='cite' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='cite' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='cite' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='cite' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='cite' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='cite' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='cite' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='cite' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='cite' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='cite' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='cite' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='cite' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='cite' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (q): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:rubricBlock">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='use' or string(name(@*[1]))='view' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='use' or string(name(@*[2]))='view' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='use' or string(name(@*[3]))='view' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='use' or string(name(@*[4]))='view' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='use' or string(name(@*[5]))='view' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='use' or string(name(@*[6]))='view' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='use' or string(name(@*[7]))='view' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='use' or string(name(@*[8]))='view' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='use' or string(name(@*[9]))='view' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='use' or string(name(@*[10]))='view' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='use' or string(name(@*[11]))='view' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='use' or string(name(@*[12]))='view' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='use' or string(name(@*[13]))='view' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='use' or string(name(@*[14]))='view' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='use' or string(name(@*[15]))='view' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='use' or string(name(@*[16]))='view' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='use' or string(name(@*[17]))='view' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='use' or string(name(@*[18]))='view' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='use' or string(name(@*[19]))='view' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (rubricBlock): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:samp">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (samp): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:selectPointInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='minChoices' or string(name(@*[1]))='maxChoices' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='minChoices' or string(name(@*[2]))='maxChoices' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='minChoices' or string(name(@*[3]))='maxChoices' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='minChoices' or string(name(@*[4]))='maxChoices' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='minChoices' or string(name(@*[5]))='maxChoices' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='minChoices' or string(name(@*[6]))='maxChoices' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='minChoices' or string(name(@*[7]))='maxChoices' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='minChoices' or string(name(@*[8]))='maxChoices' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='minChoices' or string(name(@*[9]))='maxChoices' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='minChoices' or string(name(@*[10]))='maxChoices' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='minChoices' or string(name(@*[11]))='maxChoices' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='minChoices' or string(name(@*[12]))='maxChoices' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='minChoices' or string(name(@*[13]))='maxChoices' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='minChoices' or string(name(@*[14]))='maxChoices' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='minChoices' or string(name(@*[15]))='maxChoices' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='minChoices' or string(name(@*[16]))='maxChoices' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='minChoices' or string(name(@*[17]))='maxChoices' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='minChoices' or string(name(@*[18]))='maxChoices' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='minChoices' or string(name(@*[19]))='maxChoices' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='minChoices' or string(name(@*[20]))='maxChoices' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (selectPointInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:simpleAssociableChoice">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='identifier' or string(name(@*[1]))='fixed' or string(name(@*[1]))='templateIdentifier' or string(name(@*[1]))='showHide' or string(name(@*[1]))='matchGroup' or string(name(@*[1]))='matchMax' or string(name(@*[1]))='matchMin' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='identifier' or string(name(@*[2]))='fixed' or string(name(@*[2]))='templateIdentifier' or string(name(@*[2]))='showHide' or string(name(@*[2]))='matchGroup' or string(name(@*[2]))='matchMax' or string(name(@*[2]))='matchMin' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='identifier' or string(name(@*[3]))='fixed' or string(name(@*[3]))='templateIdentifier' or string(name(@*[3]))='showHide' or string(name(@*[3]))='matchGroup' or string(name(@*[3]))='matchMax' or string(name(@*[3]))='matchMin' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='identifier' or string(name(@*[4]))='fixed' or string(name(@*[4]))='templateIdentifier' or string(name(@*[4]))='showHide' or string(name(@*[4]))='matchGroup' or string(name(@*[4]))='matchMax' or string(name(@*[4]))='matchMin' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='identifier' or string(name(@*[5]))='fixed' or string(name(@*[5]))='templateIdentifier' or string(name(@*[5]))='showHide' or string(name(@*[5]))='matchGroup' or string(name(@*[5]))='matchMax' or string(name(@*[5]))='matchMin' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='identifier' or string(name(@*[6]))='fixed' or string(name(@*[6]))='templateIdentifier' or string(name(@*[6]))='showHide' or string(name(@*[6]))='matchGroup' or string(name(@*[6]))='matchMax' or string(name(@*[6]))='matchMin' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='identifier' or string(name(@*[7]))='fixed' or string(name(@*[7]))='templateIdentifier' or string(name(@*[7]))='showHide' or string(name(@*[7]))='matchGroup' or string(name(@*[7]))='matchMax' or string(name(@*[7]))='matchMin' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='identifier' or string(name(@*[8]))='fixed' or string(name(@*[8]))='templateIdentifier' or string(name(@*[8]))='showHide' or string(name(@*[8]))='matchGroup' or string(name(@*[8]))='matchMax' or string(name(@*[8]))='matchMin' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='identifier' or string(name(@*[9]))='fixed' or string(name(@*[9]))='templateIdentifier' or string(name(@*[9]))='showHide' or string(name(@*[9]))='matchGroup' or string(name(@*[9]))='matchMax' or string(name(@*[9]))='matchMin' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='identifier' or string(name(@*[10]))='fixed' or string(name(@*[10]))='templateIdentifier' or string(name(@*[10]))='showHide' or string(name(@*[10]))='matchGroup' or string(name(@*[10]))='matchMax' or string(name(@*[10]))='matchMin' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='identifier' or string(name(@*[11]))='fixed' or string(name(@*[11]))='templateIdentifier' or string(name(@*[11]))='showHide' or string(name(@*[11]))='matchGroup' or string(name(@*[11]))='matchMax' or string(name(@*[11]))='matchMin' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='identifier' or string(name(@*[12]))='fixed' or string(name(@*[12]))='templateIdentifier' or string(name(@*[12]))='showHide' or string(name(@*[12]))='matchGroup' or string(name(@*[12]))='matchMax' or string(name(@*[12]))='matchMin' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='identifier' or string(name(@*[13]))='fixed' or string(name(@*[13]))='templateIdentifier' or string(name(@*[13]))='showHide' or string(name(@*[13]))='matchGroup' or string(name(@*[13]))='matchMax' or string(name(@*[13]))='matchMin' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='identifier' or string(name(@*[14]))='fixed' or string(name(@*[14]))='templateIdentifier' or string(name(@*[14]))='showHide' or string(name(@*[14]))='matchGroup' or string(name(@*[14]))='matchMax' or string(name(@*[14]))='matchMin' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='identifier' or string(name(@*[15]))='fixed' or string(name(@*[15]))='templateIdentifier' or string(name(@*[15]))='showHide' or string(name(@*[15]))='matchGroup' or string(name(@*[15]))='matchMax' or string(name(@*[15]))='matchMin' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='identifier' or string(name(@*[16]))='fixed' or string(name(@*[16]))='templateIdentifier' or string(name(@*[16]))='showHide' or string(name(@*[16]))='matchGroup' or string(name(@*[16]))='matchMax' or string(name(@*[16]))='matchMin' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='identifier' or string(name(@*[17]))='fixed' or string(name(@*[17]))='templateIdentifier' or string(name(@*[17]))='showHide' or string(name(@*[17]))='matchGroup' or string(name(@*[17]))='matchMax' or string(name(@*[17]))='matchMin' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='identifier' or string(name(@*[18]))='fixed' or string(name(@*[18]))='templateIdentifier' or string(name(@*[18]))='showHide' or string(name(@*[18]))='matchGroup' or string(name(@*[18]))='matchMax' or string(name(@*[18]))='matchMin' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='identifier' or string(name(@*[19]))='fixed' or string(name(@*[19]))='templateIdentifier' or string(name(@*[19]))='showHide' or string(name(@*[19]))='matchGroup' or string(name(@*[19]))='matchMax' or string(name(@*[19]))='matchMin' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='identifier' or string(name(@*[20]))='fixed' or string(name(@*[20]))='templateIdentifier' or string(name(@*[20]))='showHide' or string(name(@*[20]))='matchGroup' or string(name(@*[20]))='matchMax' or string(name(@*[20]))='matchMin' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='identifier' or string(name(@*[21]))='fixed' or string(name(@*[21]))='templateIdentifier' or string(name(@*[21]))='showHide' or string(name(@*[21]))='matchGroup' or string(name(@*[21]))='matchMax' or string(name(@*[21]))='matchMin' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[22]))=0 or string(name(@*[22]))='identifier' or string(name(@*[22]))='fixed' or string(name(@*[22]))='templateIdentifier' or string(name(@*[22]))='showHide' or string(name(@*[22]))='matchGroup' or string(name(@*[22]))='matchMax' or string(name(@*[22]))='matchMin' or string(name(@*[22]))='id' or string(name(@*[22]))='class' or string(name(@*[22]))='xml:lang' or string(name(@*[22]))='label' or string(name(@*[22]))='dir' or string(name(@*[22]))='role' or string(name(@*[22]))='aria-controls' or string(name(@*[22]))='aria-describedby' or string(name(@*[22]))='aria-flowto' or string(name(@*[22]))='aria-label' or string(name(@*[22]))='aria-labelledby' or string(name(@*[22]))='aria-level' or string(name(@*[22]))='aria-live' or string(name(@*[22]))='aria-orientation' or string(name(@*[22]))='aria-owns' or starts-with(name(@*[22]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 22] Invalid XML attribute in position 22 with name of <sch:value-of select="string(name(@*[22]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[23]))=0 or string(name(@*[23]))='identifier' or string(name(@*[23]))='fixed' or string(name(@*[23]))='templateIdentifier' or string(name(@*[23]))='showHide' or string(name(@*[23]))='matchGroup' or string(name(@*[23]))='matchMax' or string(name(@*[23]))='matchMin' or string(name(@*[23]))='id' or string(name(@*[23]))='class' or string(name(@*[23]))='xml:lang' or string(name(@*[23]))='label' or string(name(@*[23]))='dir' or string(name(@*[23]))='role' or string(name(@*[23]))='aria-controls' or string(name(@*[23]))='aria-describedby' or string(name(@*[23]))='aria-flowto' or string(name(@*[23]))='aria-label' or string(name(@*[23]))='aria-labelledby' or string(name(@*[23]))='aria-level' or string(name(@*[23]))='aria-live' or string(name(@*[23]))='aria-orientation' or string(name(@*[23]))='aria-owns' or starts-with(name(@*[23]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleAssociableChoice): Assertion 23] Invalid XML attribute in position 23 with name of <sch:value-of select="string(name(@*[23]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:simpleChoice">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='identifier' or string(name(@*[1]))='fixed' or string(name(@*[1]))='templateIdentifier' or string(name(@*[1]))='showHide' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='identifier' or string(name(@*[2]))='fixed' or string(name(@*[2]))='templateIdentifier' or string(name(@*[2]))='showHide' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='identifier' or string(name(@*[3]))='fixed' or string(name(@*[3]))='templateIdentifier' or string(name(@*[3]))='showHide' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='identifier' or string(name(@*[4]))='fixed' or string(name(@*[4]))='templateIdentifier' or string(name(@*[4]))='showHide' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='identifier' or string(name(@*[5]))='fixed' or string(name(@*[5]))='templateIdentifier' or string(name(@*[5]))='showHide' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='identifier' or string(name(@*[6]))='fixed' or string(name(@*[6]))='templateIdentifier' or string(name(@*[6]))='showHide' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='identifier' or string(name(@*[7]))='fixed' or string(name(@*[7]))='templateIdentifier' or string(name(@*[7]))='showHide' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='identifier' or string(name(@*[8]))='fixed' or string(name(@*[8]))='templateIdentifier' or string(name(@*[8]))='showHide' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='identifier' or string(name(@*[9]))='fixed' or string(name(@*[9]))='templateIdentifier' or string(name(@*[9]))='showHide' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='identifier' or string(name(@*[10]))='fixed' or string(name(@*[10]))='templateIdentifier' or string(name(@*[10]))='showHide' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='identifier' or string(name(@*[11]))='fixed' or string(name(@*[11]))='templateIdentifier' or string(name(@*[11]))='showHide' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='identifier' or string(name(@*[12]))='fixed' or string(name(@*[12]))='templateIdentifier' or string(name(@*[12]))='showHide' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='identifier' or string(name(@*[13]))='fixed' or string(name(@*[13]))='templateIdentifier' or string(name(@*[13]))='showHide' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='identifier' or string(name(@*[14]))='fixed' or string(name(@*[14]))='templateIdentifier' or string(name(@*[14]))='showHide' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='identifier' or string(name(@*[15]))='fixed' or string(name(@*[15]))='templateIdentifier' or string(name(@*[15]))='showHide' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='identifier' or string(name(@*[16]))='fixed' or string(name(@*[16]))='templateIdentifier' or string(name(@*[16]))='showHide' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='identifier' or string(name(@*[17]))='fixed' or string(name(@*[17]))='templateIdentifier' or string(name(@*[17]))='showHide' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='identifier' or string(name(@*[18]))='fixed' or string(name(@*[18]))='templateIdentifier' or string(name(@*[18]))='showHide' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='identifier' or string(name(@*[19]))='fixed' or string(name(@*[19]))='templateIdentifier' or string(name(@*[19]))='showHide' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='identifier' or string(name(@*[20]))='fixed' or string(name(@*[20]))='templateIdentifier' or string(name(@*[20]))='showHide' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (simpleChoice): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:sliderInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='lowerBound' or string(name(@*[1]))='upperBound' or string(name(@*[1]))='step' or string(name(@*[1]))='stepLabel' or string(name(@*[1]))='orientation' or string(name(@*[1]))='reverse' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='lowerBound' or string(name(@*[2]))='upperBound' or string(name(@*[2]))='step' or string(name(@*[2]))='stepLabel' or string(name(@*[2]))='orientation' or string(name(@*[2]))='reverse' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='lowerBound' or string(name(@*[3]))='upperBound' or string(name(@*[3]))='step' or string(name(@*[3]))='stepLabel' or string(name(@*[3]))='orientation' or string(name(@*[3]))='reverse' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='lowerBound' or string(name(@*[4]))='upperBound' or string(name(@*[4]))='step' or string(name(@*[4]))='stepLabel' or string(name(@*[4]))='orientation' or string(name(@*[4]))='reverse' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='lowerBound' or string(name(@*[5]))='upperBound' or string(name(@*[5]))='step' or string(name(@*[5]))='stepLabel' or string(name(@*[5]))='orientation' or string(name(@*[5]))='reverse' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='lowerBound' or string(name(@*[6]))='upperBound' or string(name(@*[6]))='step' or string(name(@*[6]))='stepLabel' or string(name(@*[6]))='orientation' or string(name(@*[6]))='reverse' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='lowerBound' or string(name(@*[7]))='upperBound' or string(name(@*[7]))='step' or string(name(@*[7]))='stepLabel' or string(name(@*[7]))='orientation' or string(name(@*[7]))='reverse' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='lowerBound' or string(name(@*[8]))='upperBound' or string(name(@*[8]))='step' or string(name(@*[8]))='stepLabel' or string(name(@*[8]))='orientation' or string(name(@*[8]))='reverse' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='lowerBound' or string(name(@*[9]))='upperBound' or string(name(@*[9]))='step' or string(name(@*[9]))='stepLabel' or string(name(@*[9]))='orientation' or string(name(@*[9]))='reverse' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='lowerBound' or string(name(@*[10]))='upperBound' or string(name(@*[10]))='step' or string(name(@*[10]))='stepLabel' or string(name(@*[10]))='orientation' or string(name(@*[10]))='reverse' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='lowerBound' or string(name(@*[11]))='upperBound' or string(name(@*[11]))='step' or string(name(@*[11]))='stepLabel' or string(name(@*[11]))='orientation' or string(name(@*[11]))='reverse' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='lowerBound' or string(name(@*[12]))='upperBound' or string(name(@*[12]))='step' or string(name(@*[12]))='stepLabel' or string(name(@*[12]))='orientation' or string(name(@*[12]))='reverse' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='lowerBound' or string(name(@*[13]))='upperBound' or string(name(@*[13]))='step' or string(name(@*[13]))='stepLabel' or string(name(@*[13]))='orientation' or string(name(@*[13]))='reverse' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='lowerBound' or string(name(@*[14]))='upperBound' or string(name(@*[14]))='step' or string(name(@*[14]))='stepLabel' or string(name(@*[14]))='orientation' or string(name(@*[14]))='reverse' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='lowerBound' or string(name(@*[15]))='upperBound' or string(name(@*[15]))='step' or string(name(@*[15]))='stepLabel' or string(name(@*[15]))='orientation' or string(name(@*[15]))='reverse' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='lowerBound' or string(name(@*[16]))='upperBound' or string(name(@*[16]))='step' or string(name(@*[16]))='stepLabel' or string(name(@*[16]))='orientation' or string(name(@*[16]))='reverse' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='lowerBound' or string(name(@*[17]))='upperBound' or string(name(@*[17]))='step' or string(name(@*[17]))='stepLabel' or string(name(@*[17]))='orientation' or string(name(@*[17]))='reverse' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='lowerBound' or string(name(@*[18]))='upperBound' or string(name(@*[18]))='step' or string(name(@*[18]))='stepLabel' or string(name(@*[18]))='orientation' or string(name(@*[18]))='reverse' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='lowerBound' or string(name(@*[19]))='upperBound' or string(name(@*[19]))='step' or string(name(@*[19]))='stepLabel' or string(name(@*[19]))='orientation' or string(name(@*[19]))='reverse' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='lowerBound' or string(name(@*[20]))='upperBound' or string(name(@*[20]))='step' or string(name(@*[20]))='stepLabel' or string(name(@*[20]))='orientation' or string(name(@*[20]))='reverse' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='lowerBound' or string(name(@*[21]))='upperBound' or string(name(@*[21]))='step' or string(name(@*[21]))='stepLabel' or string(name(@*[21]))='orientation' or string(name(@*[21]))='reverse' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='xml:base' or string(name(@*[21]))='responseIdentifier' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowsto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[22]))=0 or string(name(@*[22]))='lowerBound' or string(name(@*[22]))='upperBound' or string(name(@*[22]))='step' or string(name(@*[22]))='stepLabel' or string(name(@*[22]))='orientation' or string(name(@*[22]))='reverse' or string(name(@*[22]))='id' or string(name(@*[22]))='class' or string(name(@*[22]))='xml:lang' or string(name(@*[22]))='label' or string(name(@*[22]))='xml:base' or string(name(@*[22]))='responseIdentifier' or string(name(@*[22]))='dir' or string(name(@*[22]))='role' or string(name(@*[22]))='aria-controls' or string(name(@*[22]))='aria-describedby' or string(name(@*[22]))='aria-flowsto' or string(name(@*[22]))='aria-label' or string(name(@*[22]))='aria-labelledby' or string(name(@*[22]))='aria-level' or string(name(@*[22]))='aria-live' or string(name(@*[22]))='aria-orientation' or string(name(@*[22]))='aria-owns' or starts-with(name(@*[22]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 22] Invalid XML attribute in position 22 with name of <sch:value-of select="string(name(@*[22]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[23]))=0 or string(name(@*[23]))='lowerBound' or string(name(@*[23]))='upperBound' or string(name(@*[23]))='step' or string(name(@*[23]))='stepLabel' or string(name(@*[23]))='orientation' or string(name(@*[23]))='reverse' or string(name(@*[23]))='id' or string(name(@*[23]))='class' or string(name(@*[23]))='xml:lang' or string(name(@*[23]))='label' or string(name(@*[23]))='xml:base' or string(name(@*[23]))='responseIdentifier' or string(name(@*[23]))='dir' or string(name(@*[23]))='role' or string(name(@*[23]))='aria-controls' or string(name(@*[23]))='aria-describedby' or string(name(@*[23]))='aria-flowsto' or string(name(@*[23]))='aria-label' or string(name(@*[23]))='aria-labelledby' or string(name(@*[23]))='aria-level' or string(name(@*[23]))='aria-live' or string(name(@*[23]))='aria-orientation' or string(name(@*[23]))='aria-owns' or starts-with(name(@*[23]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 23] Invalid XML attribute in position 23 with name of <sch:value-of select="string(name(@*[23]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[24]))=0 or string(name(@*[24]))='lowerBound' or string(name(@*[24]))='upperBound' or string(name(@*[24]))='step' or string(name(@*[24]))='stepLabel' or string(name(@*[24]))='orientation' or string(name(@*[24]))='reverse' or string(name(@*[24]))='id' or string(name(@*[24]))='class' or string(name(@*[24]))='xml:lang' or string(name(@*[24]))='label' or string(name(@*[24]))='xml:base' or string(name(@*[24]))='responseIdentifier' or string(name(@*[24]))='dir' or string(name(@*[24]))='role' or string(name(@*[24]))='aria-controls' or string(name(@*[24]))='aria-describedby' or string(name(@*[24]))='aria-flowsto' or string(name(@*[24]))='aria-label' or string(name(@*[24]))='aria-labelledby' or string(name(@*[24]))='aria-level' or string(name(@*[24]))='aria-live' or string(name(@*[24]))='aria-orientation' or string(name(@*[24]))='aria-owns' or starts-with(name(@*[24]), 'data-')">
                            [RULE GLOBAL ELEMENT (sliderInteraction): Assertion 24] Invalid XML attribute in position 24 with name of <sch:value-of select="string(name(@*[24]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:small">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (small): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:span">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (span): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:stimulusBody">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (stimulusBody): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (stimulusBody): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (stimulusBody): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (stimulusBody): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (stimulusBody): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (stimulusBody): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (stimulusBody): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (stimulusBody): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (stimulusBody): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (stimulusBody): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (stimulusBody): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (stimulusBody): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (stimulusBody): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (stimulusBody): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (stimulusBody): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (stimulusBody): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:strong">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (strong): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:sub">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (sub): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:sup">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (sup): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:table">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='summary' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='summary' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='summary' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='summary' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='summary' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='summary' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='summary' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='summary' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='summary' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='summary' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='summary' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='summary' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='summary' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='summary' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='summary' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='summary' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='summary' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='summary' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (table): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:tbody">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (tbody): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (tbody): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (tbody): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (tbody): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (tbody): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (tbody): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (tbody): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (tbody): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (tbody): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (tbody): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (tbody): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (tbody): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (tbody): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (tbody): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (tbody): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (tbody): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:td">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='headers' or string(name(@*[1]))='scope' or string(name(@*[1]))='abbr' or string(name(@*[1]))='axis' or string(name(@*[1]))='rowspan' or string(name(@*[1]))='colspan' or string(name(@*[1]))='align' or string(name(@*[1]))='valign' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='headers' or string(name(@*[2]))='scope' or string(name(@*[2]))='abbr' or string(name(@*[2]))='axis' or string(name(@*[2]))='rowspan' or string(name(@*[2]))='colspan' or string(name(@*[2]))='align' or string(name(@*[2]))='valign' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='headers' or string(name(@*[3]))='scope' or string(name(@*[3]))='abbr' or string(name(@*[3]))='axis' or string(name(@*[3]))='rowspan' or string(name(@*[3]))='colspan' or string(name(@*[3]))='align' or string(name(@*[3]))='valign' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='headers' or string(name(@*[4]))='scope' or string(name(@*[4]))='abbr' or string(name(@*[4]))='axis' or string(name(@*[4]))='rowspan' or string(name(@*[4]))='colspan' or string(name(@*[4]))='align' or string(name(@*[4]))='valign' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='headers' or string(name(@*[5]))='scope' or string(name(@*[5]))='abbr' or string(name(@*[5]))='axis' or string(name(@*[5]))='rowspan' or string(name(@*[5]))='colspan' or string(name(@*[5]))='align' or string(name(@*[5]))='valign' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='headers' or string(name(@*[6]))='scope' or string(name(@*[6]))='abbr' or string(name(@*[6]))='axis' or string(name(@*[6]))='rowspan' or string(name(@*[6]))='colspan' or string(name(@*[6]))='align' or string(name(@*[6]))='valign' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='headers' or string(name(@*[7]))='scope' or string(name(@*[7]))='abbr' or string(name(@*[7]))='axis' or string(name(@*[7]))='rowspan' or string(name(@*[7]))='colspan' or string(name(@*[7]))='align' or string(name(@*[7]))='valign' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='headers' or string(name(@*[8]))='scope' or string(name(@*[8]))='abbr' or string(name(@*[8]))='axis' or string(name(@*[8]))='rowspan' or string(name(@*[8]))='colspan' or string(name(@*[8]))='align' or string(name(@*[8]))='valign' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='headers' or string(name(@*[9]))='scope' or string(name(@*[9]))='abbr' or string(name(@*[9]))='axis' or string(name(@*[9]))='rowspan' or string(name(@*[9]))='colspan' or string(name(@*[9]))='align' or string(name(@*[9]))='valign' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='headers' or string(name(@*[10]))='scope' or string(name(@*[10]))='abbr' or string(name(@*[10]))='axis' or string(name(@*[10]))='rowspan' or string(name(@*[10]))='colspan' or string(name(@*[10]))='align' or string(name(@*[10]))='valign' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='headers' or string(name(@*[11]))='scope' or string(name(@*[11]))='abbr' or string(name(@*[11]))='axis' or string(name(@*[11]))='rowspan' or string(name(@*[11]))='colspan' or string(name(@*[11]))='align' or string(name(@*[11]))='valign' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='headers' or string(name(@*[12]))='scope' or string(name(@*[12]))='abbr' or string(name(@*[12]))='axis' or string(name(@*[12]))='rowspan' or string(name(@*[12]))='colspan' or string(name(@*[12]))='align' or string(name(@*[12]))='valign' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='headers' or string(name(@*[13]))='scope' or string(name(@*[13]))='abbr' or string(name(@*[13]))='axis' or string(name(@*[13]))='rowspan' or string(name(@*[13]))='colspan' or string(name(@*[13]))='align' or string(name(@*[13]))='valign' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='headers' or string(name(@*[14]))='scope' or string(name(@*[14]))='abbr' or string(name(@*[14]))='axis' or string(name(@*[14]))='rowspan' or string(name(@*[14]))='colspan' or string(name(@*[14]))='align' or string(name(@*[14]))='valign' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='headers' or string(name(@*[15]))='scope' or string(name(@*[15]))='abbr' or string(name(@*[15]))='axis' or string(name(@*[15]))='rowspan' or string(name(@*[15]))='colspan' or string(name(@*[15]))='align' or string(name(@*[15]))='valign' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='headers' or string(name(@*[16]))='scope' or string(name(@*[16]))='abbr' or string(name(@*[16]))='axis' or string(name(@*[16]))='rowspan' or string(name(@*[16]))='colspan' or string(name(@*[16]))='align' or string(name(@*[16]))='valign' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='headers' or string(name(@*[17]))='scope' or string(name(@*[17]))='abbr' or string(name(@*[17]))='axis' or string(name(@*[17]))='rowspan' or string(name(@*[17]))='colspan' or string(name(@*[17]))='align' or string(name(@*[17]))='valign' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='headers' or string(name(@*[18]))='scope' or string(name(@*[18]))='abbr' or string(name(@*[18]))='axis' or string(name(@*[18]))='rowspan' or string(name(@*[18]))='colspan' or string(name(@*[18]))='align' or string(name(@*[18]))='valign' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='headers' or string(name(@*[19]))='scope' or string(name(@*[19]))='abbr' or string(name(@*[19]))='axis' or string(name(@*[19]))='rowspan' or string(name(@*[19]))='colspan' or string(name(@*[19]))='align' or string(name(@*[19]))='valign' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='headers' or string(name(@*[20]))='scope' or string(name(@*[20]))='abbr' or string(name(@*[20]))='axis' or string(name(@*[20]))='rowspan' or string(name(@*[20]))='colspan' or string(name(@*[20]))='align' or string(name(@*[20]))='valign' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='headers' or string(name(@*[21]))='scope' or string(name(@*[21]))='abbr' or string(name(@*[21]))='axis' or string(name(@*[21]))='rowspan' or string(name(@*[21]))='colspan' or string(name(@*[21]))='align' or string(name(@*[21]))='valign' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[22]))=0 or string(name(@*[22]))='headers' or string(name(@*[22]))='scope' or string(name(@*[22]))='abbr' or string(name(@*[22]))='axis' or string(name(@*[22]))='rowspan' or string(name(@*[22]))='colspan' or string(name(@*[22]))='align' or string(name(@*[22]))='valign' or string(name(@*[22]))='id' or string(name(@*[22]))='class' or string(name(@*[22]))='xml:lang' or string(name(@*[22]))='label' or string(name(@*[22]))='dir' or string(name(@*[22]))='role' or string(name(@*[22]))='aria-controls' or string(name(@*[22]))='aria-describedby' or string(name(@*[22]))='aria-flowto' or string(name(@*[22]))='aria-label' or string(name(@*[22]))='aria-labelledby' or string(name(@*[22]))='aria-level' or string(name(@*[22]))='aria-live' or string(name(@*[22]))='aria-orientation' or string(name(@*[22]))='aria-owns' or starts-with(name(@*[22]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 22] Invalid XML attribute in position 22 with name of <sch:value-of select="string(name(@*[22]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[23]))=0 or string(name(@*[23]))='headers' or string(name(@*[23]))='scope' or string(name(@*[23]))='abbr' or string(name(@*[23]))='axis' or string(name(@*[23]))='rowspan' or string(name(@*[23]))='colspan' or string(name(@*[23]))='align' or string(name(@*[23]))='valign' or string(name(@*[23]))='id' or string(name(@*[23]))='class' or string(name(@*[23]))='xml:lang' or string(name(@*[23]))='label' or string(name(@*[23]))='dir' or string(name(@*[23]))='role' or string(name(@*[23]))='aria-controls' or string(name(@*[23]))='aria-describedby' or string(name(@*[23]))='aria-flowto' or string(name(@*[23]))='aria-label' or string(name(@*[23]))='aria-labelledby' or string(name(@*[23]))='aria-level' or string(name(@*[23]))='aria-live' or string(name(@*[23]))='aria-orientation' or string(name(@*[23]))='aria-owns' or starts-with(name(@*[23]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 23] Invalid XML attribute in position 23 with name of <sch:value-of select="string(name(@*[23]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[24]))=0 or string(name(@*[24]))='headers' or string(name(@*[24]))='scope' or string(name(@*[24]))='abbr' or string(name(@*[24]))='axis' or string(name(@*[24]))='rowspan' or string(name(@*[24]))='colspan' or string(name(@*[24]))='align' or string(name(@*[24]))='valign' or string(name(@*[24]))='id' or string(name(@*[24]))='class' or string(name(@*[24]))='xml:lang' or string(name(@*[24]))='label' or string(name(@*[24]))='dir' or string(name(@*[24]))='role' or string(name(@*[24]))='aria-controls' or string(name(@*[24]))='aria-describedby' or string(name(@*[24]))='aria-flowto' or string(name(@*[24]))='aria-label' or string(name(@*[24]))='aria-labelledby' or string(name(@*[24]))='aria-level' or string(name(@*[24]))='aria-live' or string(name(@*[24]))='aria-orientation' or string(name(@*[24]))='aria-owns' or starts-with(name(@*[24]), 'data-')">
                            [RULE GLOBAL ELEMENT (td): Assertion 24] Invalid XML attribute in position 24 with name of <sch:value-of select="string(name(@*[24]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:templateBlock">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='templateIdentifier' or string(name(@*[1]))='showHide' or string(name(@*[1]))='identifier' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='templateIdentifier' or string(name(@*[2]))='showHide' or string(name(@*[2]))='identifier' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='templateIdentifier' or string(name(@*[3]))='showHide' or string(name(@*[3]))='identifier' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='templateIdentifier' or string(name(@*[4]))='showHide' or string(name(@*[4]))='identifier' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='templateIdentifier' or string(name(@*[5]))='showHide' or string(name(@*[5]))='identifier' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='templateIdentifier' or string(name(@*[6]))='showHide' or string(name(@*[6]))='identifier' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='templateIdentifier' or string(name(@*[7]))='showHide' or string(name(@*[7]))='identifier' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='templateIdentifier' or string(name(@*[8]))='showHide' or string(name(@*[8]))='identifier' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='templateIdentifier' or string(name(@*[9]))='showHide' or string(name(@*[9]))='identifier' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='templateIdentifier' or string(name(@*[10]))='showHide' or string(name(@*[10]))='identifier' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='templateIdentifier' or string(name(@*[11]))='showHide' or string(name(@*[11]))='identifier' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='templateIdentifier' or string(name(@*[12]))='showHide' or string(name(@*[12]))='identifier' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='templateIdentifier' or string(name(@*[13]))='showHide' or string(name(@*[13]))='identifier' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='templateIdentifier' or string(name(@*[14]))='showHide' or string(name(@*[14]))='identifier' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='templateIdentifier' or string(name(@*[15]))='showHide' or string(name(@*[15]))='identifier' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='templateIdentifier' or string(name(@*[16]))='showHide' or string(name(@*[16]))='identifier' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='templateIdentifier' or string(name(@*[17]))='showHide' or string(name(@*[17]))='identifier' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='templateIdentifier' or string(name(@*[18]))='showHide' or string(name(@*[18]))='identifier' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='templateIdentifier' or string(name(@*[19]))='showHide' or string(name(@*[19]))='identifier' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='templateIdentifier' or string(name(@*[20]))='showHide' or string(name(@*[20]))='identifier' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateBlock): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:templateInline">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='templateIdentifier' or string(name(@*[1]))='showHide' or string(name(@*[1]))='identifier' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='templateIdentifier' or string(name(@*[2]))='showHide' or string(name(@*[2]))='identifier' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='templateIdentifier' or string(name(@*[3]))='showHide' or string(name(@*[3]))='identifier' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='templateIdentifier' or string(name(@*[4]))='showHide' or string(name(@*[4]))='identifier' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='templateIdentifier' or string(name(@*[5]))='showHide' or string(name(@*[5]))='identifier' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='templateIdentifier' or string(name(@*[6]))='showHide' or string(name(@*[6]))='identifier' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='templateIdentifier' or string(name(@*[7]))='showHide' or string(name(@*[7]))='identifier' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='templateIdentifier' or string(name(@*[8]))='showHide' or string(name(@*[8]))='identifier' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='templateIdentifier' or string(name(@*[9]))='showHide' or string(name(@*[9]))='identifier' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='templateIdentifier' or string(name(@*[10]))='showHide' or string(name(@*[10]))='identifier' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='templateIdentifier' or string(name(@*[11]))='showHide' or string(name(@*[11]))='identifier' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='templateIdentifier' or string(name(@*[12]))='showHide' or string(name(@*[12]))='identifier' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='templateIdentifier' or string(name(@*[13]))='showHide' or string(name(@*[13]))='identifier' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='templateIdentifier' or string(name(@*[14]))='showHide' or string(name(@*[14]))='identifier' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='templateIdentifier' or string(name(@*[15]))='showHide' or string(name(@*[15]))='identifier' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='templateIdentifier' or string(name(@*[16]))='showHide' or string(name(@*[16]))='identifier' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='templateIdentifier' or string(name(@*[17]))='showHide' or string(name(@*[17]))='identifier' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='templateIdentifier' or string(name(@*[18]))='showHide' or string(name(@*[18]))='identifier' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='templateIdentifier' or string(name(@*[19]))='showHide' or string(name(@*[19]))='identifier' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='templateIdentifier' or string(name(@*[20]))='showHide' or string(name(@*[20]))='identifier' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (templateInline): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:textEntryInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='base' or string(name(@*[1]))='stringIdentifier' or string(name(@*[1]))='expectedLength' or string(name(@*[1]))='patternMask' or string(name(@*[1]))='placeholderText' or string(name(@*[1]))='format' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='base' or string(name(@*[2]))='stringIdentifier' or string(name(@*[2]))='expectedLength' or string(name(@*[2]))='patternMask' or string(name(@*[2]))='placeholderText' or string(name(@*[2]))='format' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='base' or string(name(@*[3]))='stringIdentifier' or string(name(@*[3]))='expectedLength' or string(name(@*[3]))='patternMask' or string(name(@*[3]))='placeholderText' or string(name(@*[3]))='format' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='base' or string(name(@*[4]))='stringIdentifier' or string(name(@*[4]))='expectedLength' or string(name(@*[4]))='patternMask' or string(name(@*[4]))='placeholderText' or string(name(@*[4]))='format' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='base' or string(name(@*[5]))='stringIdentifier' or string(name(@*[5]))='expectedLength' or string(name(@*[5]))='patternMask' or string(name(@*[5]))='placeholderText' or string(name(@*[5]))='format' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='base' or string(name(@*[6]))='stringIdentifier' or string(name(@*[6]))='expectedLength' or string(name(@*[6]))='patternMask' or string(name(@*[6]))='placeholderText' or string(name(@*[6]))='format' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='base' or string(name(@*[7]))='stringIdentifier' or string(name(@*[7]))='expectedLength' or string(name(@*[7]))='patternMask' or string(name(@*[7]))='placeholderText' or string(name(@*[7]))='format' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='base' or string(name(@*[8]))='stringIdentifier' or string(name(@*[8]))='expectedLength' or string(name(@*[8]))='patternMask' or string(name(@*[8]))='placeholderText' or string(name(@*[8]))='format' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='base' or string(name(@*[9]))='stringIdentifier' or string(name(@*[9]))='expectedLength' or string(name(@*[9]))='patternMask' or string(name(@*[9]))='placeholderText' or string(name(@*[9]))='format' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='base' or string(name(@*[10]))='stringIdentifier' or string(name(@*[10]))='expectedLength' or string(name(@*[10]))='patternMask' or string(name(@*[10]))='placeholderText' or string(name(@*[10]))='format' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='base' or string(name(@*[11]))='stringIdentifier' or string(name(@*[11]))='expectedLength' or string(name(@*[11]))='patternMask' or string(name(@*[11]))='placeholderText' or string(name(@*[11]))='format' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='base' or string(name(@*[12]))='stringIdentifier' or string(name(@*[12]))='expectedLength' or string(name(@*[12]))='patternMask' or string(name(@*[12]))='placeholderText' or string(name(@*[12]))='format' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='base' or string(name(@*[13]))='stringIdentifier' or string(name(@*[13]))='expectedLength' or string(name(@*[13]))='patternMask' or string(name(@*[13]))='placeholderText' or string(name(@*[13]))='format' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='base' or string(name(@*[14]))='stringIdentifier' or string(name(@*[14]))='expectedLength' or string(name(@*[14]))='patternMask' or string(name(@*[14]))='placeholderText' or string(name(@*[14]))='format' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='base' or string(name(@*[15]))='stringIdentifier' or string(name(@*[15]))='expectedLength' or string(name(@*[15]))='patternMask' or string(name(@*[15]))='placeholderText' or string(name(@*[15]))='format' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='base' or string(name(@*[16]))='stringIdentifier' or string(name(@*[16]))='expectedLength' or string(name(@*[16]))='patternMask' or string(name(@*[16]))='placeholderText' or string(name(@*[16]))='format' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='base' or string(name(@*[17]))='stringIdentifier' or string(name(@*[17]))='expectedLength' or string(name(@*[17]))='patternMask' or string(name(@*[17]))='placeholderText' or string(name(@*[17]))='format' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='base' or string(name(@*[18]))='stringIdentifier' or string(name(@*[18]))='expectedLength' or string(name(@*[18]))='patternMask' or string(name(@*[18]))='placeholderText' or string(name(@*[18]))='format' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='base' or string(name(@*[19]))='stringIdentifier' or string(name(@*[19]))='expectedLength' or string(name(@*[19]))='patternMask' or string(name(@*[19]))='placeholderText' or string(name(@*[19]))='format' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='responseIdentifier' or string(name(@*[20]))='base' or string(name(@*[20]))='stringIdentifier' or string(name(@*[20]))='expectedLength' or string(name(@*[20]))='patternMask' or string(name(@*[20]))='placeholderText' or string(name(@*[20]))='format' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='xml:base' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowsto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='responseIdentifier' or string(name(@*[21]))='base' or string(name(@*[21]))='stringIdentifier' or string(name(@*[21]))='expectedLength' or string(name(@*[21]))='patternMask' or string(name(@*[21]))='placeholderText' or string(name(@*[21]))='format' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='xml:base' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowsto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[22]))=0 or string(name(@*[22]))='responseIdentifier' or string(name(@*[22]))='base' or string(name(@*[22]))='stringIdentifier' or string(name(@*[22]))='expectedLength' or string(name(@*[22]))='patternMask' or string(name(@*[22]))='placeholderText' or string(name(@*[22]))='format' or string(name(@*[22]))='id' or string(name(@*[22]))='class' or string(name(@*[22]))='xml:lang' or string(name(@*[22]))='label' or string(name(@*[22]))='xml:base' or string(name(@*[22]))='dir' or string(name(@*[22]))='role' or string(name(@*[22]))='aria-controls' or string(name(@*[22]))='aria-describedby' or string(name(@*[22]))='aria-flowsto' or string(name(@*[22]))='aria-label' or string(name(@*[22]))='aria-labelledby' or string(name(@*[22]))='aria-level' or string(name(@*[22]))='aria-live' or string(name(@*[22]))='aria-orientation' or string(name(@*[22]))='aria-owns' or starts-with(name(@*[22]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 22] Invalid XML attribute in position 22 with name of <sch:value-of select="string(name(@*[22]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[23]))=0 or string(name(@*[23]))='responseIdentifier' or string(name(@*[23]))='base' or string(name(@*[23]))='stringIdentifier' or string(name(@*[23]))='expectedLength' or string(name(@*[23]))='patternMask' or string(name(@*[23]))='placeholderText' or string(name(@*[23]))='format' or string(name(@*[23]))='id' or string(name(@*[23]))='class' or string(name(@*[23]))='xml:lang' or string(name(@*[23]))='label' or string(name(@*[23]))='xml:base' or string(name(@*[23]))='dir' or string(name(@*[23]))='role' or string(name(@*[23]))='aria-controls' or string(name(@*[23]))='aria-describedby' or string(name(@*[23]))='aria-flowsto' or string(name(@*[23]))='aria-label' or string(name(@*[23]))='aria-labelledby' or string(name(@*[23]))='aria-level' or string(name(@*[23]))='aria-live' or string(name(@*[23]))='aria-orientation' or string(name(@*[23]))='aria-owns' or starts-with(name(@*[23]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 23] Invalid XML attribute in position 23 with name of <sch:value-of select="string(name(@*[23]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[24]))=0 or string(name(@*[24]))='responseIdentifier' or string(name(@*[24]))='base' or string(name(@*[24]))='stringIdentifier' or string(name(@*[24]))='expectedLength' or string(name(@*[24]))='patternMask' or string(name(@*[24]))='placeholderText' or string(name(@*[24]))='format' or string(name(@*[24]))='id' or string(name(@*[24]))='class' or string(name(@*[24]))='xml:lang' or string(name(@*[24]))='label' or string(name(@*[24]))='xml:base' or string(name(@*[24]))='dir' or string(name(@*[24]))='role' or string(name(@*[24]))='aria-controls' or string(name(@*[24]))='aria-describedby' or string(name(@*[24]))='aria-flowsto' or string(name(@*[24]))='aria-label' or string(name(@*[24]))='aria-labelledby' or string(name(@*[24]))='aria-level' or string(name(@*[24]))='aria-live' or string(name(@*[24]))='aria-orientation' or string(name(@*[24]))='aria-owns' or starts-with(name(@*[24]), 'data-')">
                            [RULE GLOBAL ELEMENT (textEntryInteraction): Assertion 24] Invalid XML attribute in position 24 with name of <sch:value-of select="string(name(@*[24]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:tfoot">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (tfoot): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (tfoot): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (tfoot): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (tfoot): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (tfoot): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (tfoot): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (tfoot): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (tfoot): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (tfoot): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (tfoot): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (tfoot): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (tfoot): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (tfoot): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (tfoot): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (tfoot): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (tfoot): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:th">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='headers' or string(name(@*[1]))='scope' or string(name(@*[1]))='abbr' or string(name(@*[1]))='axis' or string(name(@*[1]))='rowspan' or string(name(@*[1]))='colspan' or string(name(@*[1]))='align' or string(name(@*[1]))='valign' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='headers' or string(name(@*[2]))='scope' or string(name(@*[2]))='abbr' or string(name(@*[2]))='axis' or string(name(@*[2]))='rowspan' or string(name(@*[2]))='colspan' or string(name(@*[2]))='align' or string(name(@*[2]))='valign' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='headers' or string(name(@*[3]))='scope' or string(name(@*[3]))='abbr' or string(name(@*[3]))='axis' or string(name(@*[3]))='rowspan' or string(name(@*[3]))='colspan' or string(name(@*[3]))='align' or string(name(@*[3]))='valign' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='headers' or string(name(@*[4]))='scope' or string(name(@*[4]))='abbr' or string(name(@*[4]))='axis' or string(name(@*[4]))='rowspan' or string(name(@*[4]))='colspan' or string(name(@*[4]))='align' or string(name(@*[4]))='valign' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='headers' or string(name(@*[5]))='scope' or string(name(@*[5]))='abbr' or string(name(@*[5]))='axis' or string(name(@*[5]))='rowspan' or string(name(@*[5]))='colspan' or string(name(@*[5]))='align' or string(name(@*[5]))='valign' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='headers' or string(name(@*[6]))='scope' or string(name(@*[6]))='abbr' or string(name(@*[6]))='axis' or string(name(@*[6]))='rowspan' or string(name(@*[6]))='colspan' or string(name(@*[6]))='align' or string(name(@*[6]))='valign' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='headers' or string(name(@*[7]))='scope' or string(name(@*[7]))='abbr' or string(name(@*[7]))='axis' or string(name(@*[7]))='rowspan' or string(name(@*[7]))='colspan' or string(name(@*[7]))='align' or string(name(@*[7]))='valign' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='headers' or string(name(@*[8]))='scope' or string(name(@*[8]))='abbr' or string(name(@*[8]))='axis' or string(name(@*[8]))='rowspan' or string(name(@*[8]))='colspan' or string(name(@*[8]))='align' or string(name(@*[8]))='valign' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='headers' or string(name(@*[9]))='scope' or string(name(@*[9]))='abbr' or string(name(@*[9]))='axis' or string(name(@*[9]))='rowspan' or string(name(@*[9]))='colspan' or string(name(@*[9]))='align' or string(name(@*[9]))='valign' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='headers' or string(name(@*[10]))='scope' or string(name(@*[10]))='abbr' or string(name(@*[10]))='axis' or string(name(@*[10]))='rowspan' or string(name(@*[10]))='colspan' or string(name(@*[10]))='align' or string(name(@*[10]))='valign' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='headers' or string(name(@*[11]))='scope' or string(name(@*[11]))='abbr' or string(name(@*[11]))='axis' or string(name(@*[11]))='rowspan' or string(name(@*[11]))='colspan' or string(name(@*[11]))='align' or string(name(@*[11]))='valign' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='headers' or string(name(@*[12]))='scope' or string(name(@*[12]))='abbr' or string(name(@*[12]))='axis' or string(name(@*[12]))='rowspan' or string(name(@*[12]))='colspan' or string(name(@*[12]))='align' or string(name(@*[12]))='valign' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='headers' or string(name(@*[13]))='scope' or string(name(@*[13]))='abbr' or string(name(@*[13]))='axis' or string(name(@*[13]))='rowspan' or string(name(@*[13]))='colspan' or string(name(@*[13]))='align' or string(name(@*[13]))='valign' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='headers' or string(name(@*[14]))='scope' or string(name(@*[14]))='abbr' or string(name(@*[14]))='axis' or string(name(@*[14]))='rowspan' or string(name(@*[14]))='colspan' or string(name(@*[14]))='align' or string(name(@*[14]))='valign' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='headers' or string(name(@*[15]))='scope' or string(name(@*[15]))='abbr' or string(name(@*[15]))='axis' or string(name(@*[15]))='rowspan' or string(name(@*[15]))='colspan' or string(name(@*[15]))='align' or string(name(@*[15]))='valign' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='headers' or string(name(@*[16]))='scope' or string(name(@*[16]))='abbr' or string(name(@*[16]))='axis' or string(name(@*[16]))='rowspan' or string(name(@*[16]))='colspan' or string(name(@*[16]))='align' or string(name(@*[16]))='valign' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='headers' or string(name(@*[17]))='scope' or string(name(@*[17]))='abbr' or string(name(@*[17]))='axis' or string(name(@*[17]))='rowspan' or string(name(@*[17]))='colspan' or string(name(@*[17]))='align' or string(name(@*[17]))='valign' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='headers' or string(name(@*[18]))='scope' or string(name(@*[18]))='abbr' or string(name(@*[18]))='axis' or string(name(@*[18]))='rowspan' or string(name(@*[18]))='colspan' or string(name(@*[18]))='align' or string(name(@*[18]))='valign' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='headers' or string(name(@*[19]))='scope' or string(name(@*[19]))='abbr' or string(name(@*[19]))='axis' or string(name(@*[19]))='rowspan' or string(name(@*[19]))='colspan' or string(name(@*[19]))='align' or string(name(@*[19]))='valign' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[20]))=0 or string(name(@*[20]))='headers' or string(name(@*[20]))='scope' or string(name(@*[20]))='abbr' or string(name(@*[20]))='axis' or string(name(@*[20]))='rowspan' or string(name(@*[20]))='colspan' or string(name(@*[20]))='align' or string(name(@*[20]))='valign' or string(name(@*[20]))='id' or string(name(@*[20]))='class' or string(name(@*[20]))='xml:lang' or string(name(@*[20]))='label' or string(name(@*[20]))='dir' or string(name(@*[20]))='role' or string(name(@*[20]))='aria-controls' or string(name(@*[20]))='aria-describedby' or string(name(@*[20]))='aria-flowto' or string(name(@*[20]))='aria-label' or string(name(@*[20]))='aria-labelledby' or string(name(@*[20]))='aria-level' or string(name(@*[20]))='aria-live' or string(name(@*[20]))='aria-orientation' or string(name(@*[20]))='aria-owns' or starts-with(name(@*[20]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 20] Invalid XML attribute in position 20 with name of <sch:value-of select="string(name(@*[20]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[21]))=0 or string(name(@*[21]))='headers' or string(name(@*[21]))='scope' or string(name(@*[21]))='abbr' or string(name(@*[21]))='axis' or string(name(@*[21]))='rowspan' or string(name(@*[21]))='colspan' or string(name(@*[21]))='align' or string(name(@*[21]))='valign' or string(name(@*[21]))='id' or string(name(@*[21]))='class' or string(name(@*[21]))='xml:lang' or string(name(@*[21]))='label' or string(name(@*[21]))='dir' or string(name(@*[21]))='role' or string(name(@*[21]))='aria-controls' or string(name(@*[21]))='aria-describedby' or string(name(@*[21]))='aria-flowto' or string(name(@*[21]))='aria-label' or string(name(@*[21]))='aria-labelledby' or string(name(@*[21]))='aria-level' or string(name(@*[21]))='aria-live' or string(name(@*[21]))='aria-orientation' or string(name(@*[21]))='aria-owns' or starts-with(name(@*[21]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 21] Invalid XML attribute in position 21 with name of <sch:value-of select="string(name(@*[21]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[22]))=0 or string(name(@*[22]))='headers' or string(name(@*[22]))='scope' or string(name(@*[22]))='abbr' or string(name(@*[22]))='axis' or string(name(@*[22]))='rowspan' or string(name(@*[22]))='colspan' or string(name(@*[22]))='align' or string(name(@*[22]))='valign' or string(name(@*[22]))='id' or string(name(@*[22]))='class' or string(name(@*[22]))='xml:lang' or string(name(@*[22]))='label' or string(name(@*[22]))='dir' or string(name(@*[22]))='role' or string(name(@*[22]))='aria-controls' or string(name(@*[22]))='aria-describedby' or string(name(@*[22]))='aria-flowto' or string(name(@*[22]))='aria-label' or string(name(@*[22]))='aria-labelledby' or string(name(@*[22]))='aria-level' or string(name(@*[22]))='aria-live' or string(name(@*[22]))='aria-orientation' or string(name(@*[22]))='aria-owns' or starts-with(name(@*[22]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 22] Invalid XML attribute in position 22 with name of <sch:value-of select="string(name(@*[22]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[23]))=0 or string(name(@*[23]))='headers' or string(name(@*[23]))='scope' or string(name(@*[23]))='abbr' or string(name(@*[23]))='axis' or string(name(@*[23]))='rowspan' or string(name(@*[23]))='colspan' or string(name(@*[23]))='align' or string(name(@*[23]))='valign' or string(name(@*[23]))='id' or string(name(@*[23]))='class' or string(name(@*[23]))='xml:lang' or string(name(@*[23]))='label' or string(name(@*[23]))='dir' or string(name(@*[23]))='role' or string(name(@*[23]))='aria-controls' or string(name(@*[23]))='aria-describedby' or string(name(@*[23]))='aria-flowto' or string(name(@*[23]))='aria-label' or string(name(@*[23]))='aria-labelledby' or string(name(@*[23]))='aria-level' or string(name(@*[23]))='aria-live' or string(name(@*[23]))='aria-orientation' or string(name(@*[23]))='aria-owns' or starts-with(name(@*[23]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 23] Invalid XML attribute in position 23 with name of <sch:value-of select="string(name(@*[23]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[24]))=0 or string(name(@*[24]))='headers' or string(name(@*[24]))='scope' or string(name(@*[24]))='abbr' or string(name(@*[24]))='axis' or string(name(@*[24]))='rowspan' or string(name(@*[24]))='colspan' or string(name(@*[24]))='align' or string(name(@*[24]))='valign' or string(name(@*[24]))='id' or string(name(@*[24]))='class' or string(name(@*[24]))='xml:lang' or string(name(@*[24]))='label' or string(name(@*[24]))='dir' or string(name(@*[24]))='role' or string(name(@*[24]))='aria-controls' or string(name(@*[24]))='aria-describedby' or string(name(@*[24]))='aria-flowto' or string(name(@*[24]))='aria-label' or string(name(@*[24]))='aria-labelledby' or string(name(@*[24]))='aria-level' or string(name(@*[24]))='aria-live' or string(name(@*[24]))='aria-orientation' or string(name(@*[24]))='aria-owns' or starts-with(name(@*[24]), 'data-')">
                            [RULE GLOBAL ELEMENT (th): Assertion 24] Invalid XML attribute in position 24 with name of <sch:value-of select="string(name(@*[24]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:thead">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (thead): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (thead): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (thead): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (thead): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (thead): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (thead): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (thead): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (thead): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (thead): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (thead): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (thead): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (thead): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (thead): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (thead): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (thead): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (thead): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:tr">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (tr): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (tr): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (tr): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (tr): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (tr): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (tr): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (tr): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (tr): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (tr): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (tr): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (tr): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (tr): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (tr): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (tr): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (tr): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (tr): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:tt">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (tt): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:ul">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (ul): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:uploadInteraction">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='type' or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='responseIdentifier' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowsto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='type' or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='responseIdentifier' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowsto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='type' or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='responseIdentifier' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowsto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='type' or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='responseIdentifier' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowsto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='type' or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='responseIdentifier' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowsto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='type' or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='responseIdentifier' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowsto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='type' or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='responseIdentifier' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowsto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='type' or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='responseIdentifier' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowsto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='type' or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='responseIdentifier' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowsto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='type' or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='responseIdentifier' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowsto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='type' or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='responseIdentifier' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowsto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='type' or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='responseIdentifier' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowsto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='type' or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='responseIdentifier' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowsto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='type' or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='responseIdentifier' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowsto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='type' or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='responseIdentifier' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowsto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='type' or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='responseIdentifier' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowsto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='type' or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='responseIdentifier' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowsto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[18]))=0 or string(name(@*[18]))='type' or string(name(@*[18]))='id' or string(name(@*[18]))='class' or string(name(@*[18]))='xml:lang' or string(name(@*[18]))='label' or string(name(@*[18]))='xml:base' or string(name(@*[18]))='responseIdentifier' or string(name(@*[18]))='dir' or string(name(@*[18]))='role' or string(name(@*[18]))='aria-controls' or string(name(@*[18]))='aria-describedby' or string(name(@*[18]))='aria-flowsto' or string(name(@*[18]))='aria-label' or string(name(@*[18]))='aria-labelledby' or string(name(@*[18]))='aria-level' or string(name(@*[18]))='aria-live' or string(name(@*[18]))='aria-orientation' or string(name(@*[18]))='aria-owns' or starts-with(name(@*[18]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 18] Invalid XML attribute in position 18 with name of <sch:value-of select="string(name(@*[18]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[19]))=0 or string(name(@*[19]))='type' or string(name(@*[19]))='id' or string(name(@*[19]))='class' or string(name(@*[19]))='xml:lang' or string(name(@*[19]))='label' or string(name(@*[19]))='xml:base' or string(name(@*[19]))='responseIdentifier' or string(name(@*[19]))='dir' or string(name(@*[19]))='role' or string(name(@*[19]))='aria-controls' or string(name(@*[19]))='aria-describedby' or string(name(@*[19]))='aria-flowsto' or string(name(@*[19]))='aria-label' or string(name(@*[19]))='aria-labelledby' or string(name(@*[19]))='aria-level' or string(name(@*[19]))='aria-live' or string(name(@*[19]))='aria-orientation' or string(name(@*[19]))='aria-owns' or starts-with(name(@*[19]), 'data-')">
                            [RULE GLOBAL ELEMENT (uploadInteraction): Assertion 19] Invalid XML attribute in position 19 with name of <sch:value-of select="string(name(@*[19]))" />.
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:var">
                        <sch:assert test="string-length(name(@*[1]))=0 or string(name(@*[1]))='id' or string(name(@*[1]))='class' or string(name(@*[1]))='xml:lang' or string(name(@*[1]))='label' or string(name(@*[1]))='xml:base' or string(name(@*[1]))='dir' or string(name(@*[1]))='role' or string(name(@*[1]))='aria-controls' or string(name(@*[1]))='aria-describedby' or string(name(@*[1]))='aria-flowto' or string(name(@*[1]))='aria-label' or string(name(@*[1]))='aria-labelledby' or string(name(@*[1]))='aria-level' or string(name(@*[1]))='aria-live' or string(name(@*[1]))='aria-orientation' or string(name(@*[1]))='aria-owns' or starts-with(name(@*[1]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 1] Invalid XML attribute in position 1 with name of <sch:value-of select="string(name(@*[1]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[2]))=0 or string(name(@*[2]))='id' or string(name(@*[2]))='class' or string(name(@*[2]))='xml:lang' or string(name(@*[2]))='label' or string(name(@*[2]))='xml:base' or string(name(@*[2]))='dir' or string(name(@*[2]))='role' or string(name(@*[2]))='aria-controls' or string(name(@*[2]))='aria-describedby' or string(name(@*[2]))='aria-flowto' or string(name(@*[2]))='aria-label' or string(name(@*[2]))='aria-labelledby' or string(name(@*[2]))='aria-level' or string(name(@*[2]))='aria-live' or string(name(@*[2]))='aria-orientation' or string(name(@*[2]))='aria-owns' or starts-with(name(@*[2]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 2] Invalid XML attribute in position 2 with name of <sch:value-of select="string(name(@*[2]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[3]))=0 or string(name(@*[3]))='id' or string(name(@*[3]))='class' or string(name(@*[3]))='xml:lang' or string(name(@*[3]))='label' or string(name(@*[3]))='xml:base' or string(name(@*[3]))='dir' or string(name(@*[3]))='role' or string(name(@*[3]))='aria-controls' or string(name(@*[3]))='aria-describedby' or string(name(@*[3]))='aria-flowto' or string(name(@*[3]))='aria-label' or string(name(@*[3]))='aria-labelledby' or string(name(@*[3]))='aria-level' or string(name(@*[3]))='aria-live' or string(name(@*[3]))='aria-orientation' or string(name(@*[3]))='aria-owns' or starts-with(name(@*[3]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 3] Invalid XML attribute in position 3 with name of <sch:value-of select="string(name(@*[3]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[4]))=0 or string(name(@*[4]))='id' or string(name(@*[4]))='class' or string(name(@*[4]))='xml:lang' or string(name(@*[4]))='label' or string(name(@*[4]))='xml:base' or string(name(@*[4]))='dir' or string(name(@*[4]))='role' or string(name(@*[4]))='aria-controls' or string(name(@*[4]))='aria-describedby' or string(name(@*[4]))='aria-flowto' or string(name(@*[4]))='aria-label' or string(name(@*[4]))='aria-labelledby' or string(name(@*[4]))='aria-level' or string(name(@*[4]))='aria-live' or string(name(@*[4]))='aria-orientation' or string(name(@*[4]))='aria-owns' or starts-with(name(@*[4]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 4] Invalid XML attribute in position 4 with name of <sch:value-of select="string(name(@*[4]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[5]))=0 or string(name(@*[5]))='id' or string(name(@*[5]))='class' or string(name(@*[5]))='xml:lang' or string(name(@*[5]))='label' or string(name(@*[5]))='xml:base' or string(name(@*[5]))='dir' or string(name(@*[5]))='role' or string(name(@*[5]))='aria-controls' or string(name(@*[5]))='aria-describedby' or string(name(@*[5]))='aria-flowto' or string(name(@*[5]))='aria-label' or string(name(@*[5]))='aria-labelledby' or string(name(@*[5]))='aria-level' or string(name(@*[5]))='aria-live' or string(name(@*[5]))='aria-orientation' or string(name(@*[5]))='aria-owns' or starts-with(name(@*[5]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 5] Invalid XML attribute in position 5 with name of <sch:value-of select="string(name(@*[5]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[6]))=0 or string(name(@*[6]))='id' or string(name(@*[6]))='class' or string(name(@*[6]))='xml:lang' or string(name(@*[6]))='label' or string(name(@*[6]))='xml:base' or string(name(@*[6]))='dir' or string(name(@*[6]))='role' or string(name(@*[6]))='aria-controls' or string(name(@*[6]))='aria-describedby' or string(name(@*[6]))='aria-flowto' or string(name(@*[6]))='aria-label' or string(name(@*[6]))='aria-labelledby' or string(name(@*[6]))='aria-level' or string(name(@*[6]))='aria-live' or string(name(@*[6]))='aria-orientation' or string(name(@*[6]))='aria-owns' or starts-with(name(@*[6]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 6] Invalid XML attribute in position 6 with name of <sch:value-of select="string(name(@*[6]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[7]))=0 or string(name(@*[7]))='id' or string(name(@*[7]))='class' or string(name(@*[7]))='xml:lang' or string(name(@*[7]))='label' or string(name(@*[7]))='xml:base' or string(name(@*[7]))='dir' or string(name(@*[7]))='role' or string(name(@*[7]))='aria-controls' or string(name(@*[7]))='aria-describedby' or string(name(@*[7]))='aria-flowto' or string(name(@*[7]))='aria-label' or string(name(@*[7]))='aria-labelledby' or string(name(@*[7]))='aria-level' or string(name(@*[7]))='aria-live' or string(name(@*[7]))='aria-orientation' or string(name(@*[7]))='aria-owns' or starts-with(name(@*[7]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 7] Invalid XML attribute in position 7 with name of <sch:value-of select="string(name(@*[7]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[8]))=0 or string(name(@*[8]))='id' or string(name(@*[8]))='class' or string(name(@*[8]))='xml:lang' or string(name(@*[8]))='label' or string(name(@*[8]))='xml:base' or string(name(@*[8]))='dir' or string(name(@*[8]))='role' or string(name(@*[8]))='aria-controls' or string(name(@*[8]))='aria-describedby' or string(name(@*[8]))='aria-flowto' or string(name(@*[8]))='aria-label' or string(name(@*[8]))='aria-labelledby' or string(name(@*[8]))='aria-level' or string(name(@*[8]))='aria-live' or string(name(@*[8]))='aria-orientation' or string(name(@*[8]))='aria-owns' or starts-with(name(@*[8]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 8] Invalid XML attribute in position 8 with name of <sch:value-of select="string(name(@*[8]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[9]))=0 or string(name(@*[9]))='id' or string(name(@*[9]))='class' or string(name(@*[9]))='xml:lang' or string(name(@*[9]))='label' or string(name(@*[9]))='xml:base' or string(name(@*[9]))='dir' or string(name(@*[9]))='role' or string(name(@*[9]))='aria-controls' or string(name(@*[9]))='aria-describedby' or string(name(@*[9]))='aria-flowto' or string(name(@*[9]))='aria-label' or string(name(@*[9]))='aria-labelledby' or string(name(@*[9]))='aria-level' or string(name(@*[9]))='aria-live' or string(name(@*[9]))='aria-orientation' or string(name(@*[9]))='aria-owns' or starts-with(name(@*[9]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 9] Invalid XML attribute in position 9 with name of <sch:value-of select="string(name(@*[9]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[10]))=0 or string(name(@*[10]))='id' or string(name(@*[10]))='class' or string(name(@*[10]))='xml:lang' or string(name(@*[10]))='label' or string(name(@*[10]))='xml:base' or string(name(@*[10]))='dir' or string(name(@*[10]))='role' or string(name(@*[10]))='aria-controls' or string(name(@*[10]))='aria-describedby' or string(name(@*[10]))='aria-flowto' or string(name(@*[10]))='aria-label' or string(name(@*[10]))='aria-labelledby' or string(name(@*[10]))='aria-level' or string(name(@*[10]))='aria-live' or string(name(@*[10]))='aria-orientation' or string(name(@*[10]))='aria-owns' or starts-with(name(@*[10]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 10] Invalid XML attribute in position 10 with name of <sch:value-of select="string(name(@*[10]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[11]))=0 or string(name(@*[11]))='id' or string(name(@*[11]))='class' or string(name(@*[11]))='xml:lang' or string(name(@*[11]))='label' or string(name(@*[11]))='xml:base' or string(name(@*[11]))='dir' or string(name(@*[11]))='role' or string(name(@*[11]))='aria-controls' or string(name(@*[11]))='aria-describedby' or string(name(@*[11]))='aria-flowto' or string(name(@*[11]))='aria-label' or string(name(@*[11]))='aria-labelledby' or string(name(@*[11]))='aria-level' or string(name(@*[11]))='aria-live' or string(name(@*[11]))='aria-orientation' or string(name(@*[11]))='aria-owns' or starts-with(name(@*[11]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 11] Invalid XML attribute in position 11 with name of <sch:value-of select="string(name(@*[11]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[12]))=0 or string(name(@*[12]))='id' or string(name(@*[12]))='class' or string(name(@*[12]))='xml:lang' or string(name(@*[12]))='label' or string(name(@*[12]))='xml:base' or string(name(@*[12]))='dir' or string(name(@*[12]))='role' or string(name(@*[12]))='aria-controls' or string(name(@*[12]))='aria-describedby' or string(name(@*[12]))='aria-flowto' or string(name(@*[12]))='aria-label' or string(name(@*[12]))='aria-labelledby' or string(name(@*[12]))='aria-level' or string(name(@*[12]))='aria-live' or string(name(@*[12]))='aria-orientation' or string(name(@*[12]))='aria-owns' or starts-with(name(@*[12]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 12] Invalid XML attribute in position 12 with name of <sch:value-of select="string(name(@*[12]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[13]))=0 or string(name(@*[13]))='id' or string(name(@*[13]))='class' or string(name(@*[13]))='xml:lang' or string(name(@*[13]))='label' or string(name(@*[13]))='xml:base' or string(name(@*[13]))='dir' or string(name(@*[13]))='role' or string(name(@*[13]))='aria-controls' or string(name(@*[13]))='aria-describedby' or string(name(@*[13]))='aria-flowto' or string(name(@*[13]))='aria-label' or string(name(@*[13]))='aria-labelledby' or string(name(@*[13]))='aria-level' or string(name(@*[13]))='aria-live' or string(name(@*[13]))='aria-orientation' or string(name(@*[13]))='aria-owns' or starts-with(name(@*[13]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 13] Invalid XML attribute in position 13 with name of <sch:value-of select="string(name(@*[13]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[14]))=0 or string(name(@*[14]))='id' or string(name(@*[14]))='class' or string(name(@*[14]))='xml:lang' or string(name(@*[14]))='label' or string(name(@*[14]))='xml:base' or string(name(@*[14]))='dir' or string(name(@*[14]))='role' or string(name(@*[14]))='aria-controls' or string(name(@*[14]))='aria-describedby' or string(name(@*[14]))='aria-flowto' or string(name(@*[14]))='aria-label' or string(name(@*[14]))='aria-labelledby' or string(name(@*[14]))='aria-level' or string(name(@*[14]))='aria-live' or string(name(@*[14]))='aria-orientation' or string(name(@*[14]))='aria-owns' or starts-with(name(@*[14]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 14] Invalid XML attribute in position 14 with name of <sch:value-of select="string(name(@*[14]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[15]))=0 or string(name(@*[15]))='id' or string(name(@*[15]))='class' or string(name(@*[15]))='xml:lang' or string(name(@*[15]))='label' or string(name(@*[15]))='xml:base' or string(name(@*[15]))='dir' or string(name(@*[15]))='role' or string(name(@*[15]))='aria-controls' or string(name(@*[15]))='aria-describedby' or string(name(@*[15]))='aria-flowto' or string(name(@*[15]))='aria-label' or string(name(@*[15]))='aria-labelledby' or string(name(@*[15]))='aria-level' or string(name(@*[15]))='aria-live' or string(name(@*[15]))='aria-orientation' or string(name(@*[15]))='aria-owns' or starts-with(name(@*[15]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 15] Invalid XML attribute in position 15 with name of <sch:value-of select="string(name(@*[15]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[16]))=0 or string(name(@*[16]))='id' or string(name(@*[16]))='class' or string(name(@*[16]))='xml:lang' or string(name(@*[16]))='label' or string(name(@*[16]))='xml:base' or string(name(@*[16]))='dir' or string(name(@*[16]))='role' or string(name(@*[16]))='aria-controls' or string(name(@*[16]))='aria-describedby' or string(name(@*[16]))='aria-flowto' or string(name(@*[16]))='aria-label' or string(name(@*[16]))='aria-labelledby' or string(name(@*[16]))='aria-level' or string(name(@*[16]))='aria-live' or string(name(@*[16]))='aria-orientation' or string(name(@*[16]))='aria-owns' or starts-with(name(@*[16]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 16] Invalid XML attribute in position 16 with name of <sch:value-of select="string(name(@*[16]))" />.
                        </sch:assert>
                        <sch:assert test="string-length(name(@*[17]))=0 or string(name(@*[17]))='id' or string(name(@*[17]))='class' or string(name(@*[17]))='xml:lang' or string(name(@*[17]))='label' or string(name(@*[17]))='xml:base' or string(name(@*[17]))='dir' or string(name(@*[17]))='role' or string(name(@*[17]))='aria-controls' or string(name(@*[17]))='aria-describedby' or string(name(@*[17]))='aria-flowto' or string(name(@*[17]))='aria-label' or string(name(@*[17]))='aria-labelledby' or string(name(@*[17]))='aria-level' or string(name(@*[17]))='aria-live' or string(name(@*[17]))='aria-orientation' or string(name(@*[17]))='aria-owns' or starts-with(name(@*[17]), 'data-')">
                            [RULE GLOBAL ELEMENT (var): Assertion 17] Invalid XML attribute in position 17 with name of <sch:value-of select="string(name(@*[17]))" />.
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- RULESET ******************************************************************* -->

            </xs:appinfo>
        </xs:annotation>

        <xs:annotation>
            <xs:documentation>
                Definition of Schematron Validation Rules
                =========================================
                Author:         Colin Smythe (IMS Global, UK) and Mark McKell (IMS Global, USA)
                Date:           27th November, 2017
                Version:        1.0.2
                Status:         Final Release

                Description:    This is the set of Schematron Rules to further enforce the QTIv2.2 Information Model. The rule sets that have been defined are:

                                [RULE_SET_GENERAL_1] Ensure that certain expressions are NOT used for Response Processing.
                                [RULE_SET_GENERAL_2] Ensure that the Item, Section, Test and TestPart identifiers are unique.
                                [RULE_SET_INTERACTION-RELATED_1] Enforce the correct use of the GapText attributes.
                                [RULE_SET_INTERACTION-RELATED_2] Enforce the correct use of the GapImg attributes.
                                [RULE_SET_INTERACTION-RELATED_3] Enforce the correct use of the AssociableHotspot attributes.
                                [RULE_SET_INTERACTION-RELATED_4] Enforce the correct use of the SimpleAssociableChoice attributes.
                                [RULE_SET_INTERACTION_01] Enforce the correct use of the TextEntryInteraction attributes.
                                [RULE_SET_INTERACTION_02] Enforce the correct use of the ChoiceInteraction attributes.
                                [RULE_SET_INTERACTION_03] Enforce the correct use of the ExtendedTextInteraction attributes.
                                [RULE_SET_INTERACTION_04] Enforce the correct use of the HotspotInteraction attributes.
                                [RULE_SET_INTERACTION_05] Enforce the correct use of the GraphicOrderInteraction attributes.
                                [RULE_SET_INTERACTION_06] Enforce the correct use of the PositionObjectInteraction attributes.
                                [RULE_SET_INTERACTION_07] Enforce the correct use of the SelectPointInteraction attributes.
                                [RULE_SET_INTERACTION_08] Enforce the correct use of the OrderInteraction attributes.
                                [RULE_SET_INTERACTION_09] Enforce the correct use of the HotTextInteraction attributes.
                                [RULE_SET_INTERACTION_10] Enforce the correct use of the GraphicAssociateInteraction attributes.
                                [RULE_SET_INTERACTION_11] Enforce the correct use of the MatchInteraction attributes.
                                [RULE_SET_INTERACTION_12] Enforce the correct use of the AssociateInteraction attributes.
                                [RULE_SET_INTERACTION_13] Enforce the correct use of the MediaInteraction attributes.
                                [RULE_SET_INTERACTION_14] Enforce the correct use of the SliderInteraction attributes.
                                [RULE_SET_INTERACTION_15] Enforce the correct use of the DrawingInteraction attributes.
                                [RULE_SET_INTERACTION_16] Enforce the correct use of the UploadInteraction attributes.
                                [RULE_SET_INTERACTION_17] Enforce the correct use of the EndAttemptInteraction attributes.
                                [RULE_SET_INTERACTION_18] Enforce the correct use of the GapMatchInteraction attributes.
                                [RULE_SET_INTERACTION_19] Enforce the correct use of the GraphicGapMatchInteraction attributes.
                                [RULE_SET_SPECIFIC_CLASS_1] Enforce the correct use of the OutcomeDeclaration attributes.
                                [RULE_SET_SPECIFIC_CLASS_2] Enforce the correct use of the TimeLimits attributes.

                                RULE_SET_GENERAL_1: Ensure that certain expressions are NOT used for Response Processing. The set of rules are:-
                                * RULE GENERAL 1a-Assertion 1 :- The expression numberCorrect must NOT be used in ResponseProcessing.
                                * RULE GENERAL 1a-Assertion 2 :- The expression numberIncorrect must NOT be used in ResponseProcessing.
                                * RULE GENERAL 1a-Assertion 3 :- The expression numberPresented must NOT be used in ResponseProcessing.
                                * RULE GENERAL 1a-Assertion 4 :- The expression numberResponded must NOT be used in ResponseProcessing.
                                * RULE GENERAL 1a-Assertion 5 :- The expression numberSelected must NOT be used in ResponseProcessing.
                                * RULE GENERAL 1a-Assertion 6 :- The expression outcomeMinimum must NOT be used in ResponseProcessing.
                                * RULE GENERAL 1a-Assertion 7 :- The expression outcomeMaximum must NOT be used in ResponseProcessing.
                                * RULE GENERAL 1a-Assertion 8 :- The expression testVariables must NOT be used in ResponseProcessing.

                                RULE_SET_GENERAL_2: Ensure that the Item, Section, Test and TestPart identifiers are unique. The set of rules are:-
                                * RULE GENERAL 2a-Assertion 1 :- The AssessmentTest and a TestPart must not have the same unique identifier.
                                * RULE GENERAL 2a-Assertion 2 :- The AssessmentTest and an AssessmentSection must not have the same unique identifier.
                                * RULE GENERAL 2a-Assertion 3 :- The AssessmentTest and a direct child AssessmentSectionRef must not have the same unique identifier.
                                * RULE GENERAL 2a-Assertion 4 :- The AssessmentTest and a descendant AssessmentSectionRef must not have the same unique identifier.
                                * RULE GENERAL 2a-Assertion 5 :- The AssessmentTest and a descendant AssessmentItemRef must not have the same unique identifier.
                                * RULE GENERAL 2b-Assertion 1 :- Two TestParts must not have the same unique identifier.
                                * RULE GENERAL 2b-Assertion 2 :- The TestPart and an AssessmentSection must not have the same unique identifier.
                                * RULE GENERAL 2b-Assertion 3 :- The TestPart and a direct child AssessmentSectionRef must not have the same unique identifier.
                                * RULE GENERAL 2b-Assertion 4 :- The TestPart and a descendant AssessmentSectionRef must not have the same unique identifier.
                                * RULE GENERAL 2b-Assertion 5 :- The TestPart and a descendant AssessmentItemRef must not have the same unique identifier.
                                * RULE GENERAL 2c-Assertion 1 :- Two AssessmentSection children of a TestPart must not have the same unique identifier.
                                * RULE GENERAL 2c-Assertion 2 :- The AssessmentSection and a descendant AssessmentSection must not have the same unique identifier.
                                * RULE GENERAL 2c-Assertion 3 :- The AssessmentSection and a descendant AssessmentSectionRef must not have the same unique identifier.
                                * RULE GENERAL 2c-Assertion 4 :- The AssessmentSection and a descendant AssessmentItemRef must not have the same unique identifier.

                                RULE_SET_INTERACTION-RELATED_1: Enforce the correct use of the GapText attributes. The set of rules are:-
                                * RULE INTERACTION-RELATED 1a-Assertion 1 :- The MatchMax attribute value, provided it is not 0, must not be less than the MatchMin value.

                                RULE_SET_INTERACTION-RELATED_2: Enforce the correct use of the GapImg attributes. The set of rules are:-
                                * RULE INTERACTION-RELATED 2a-Assertion 1 :- The MatchMax attribute value, provided it is not 0, must not be less than the MatchMin value.

                                RULE_SET_INTERACTION-RELATED_3: Enforce the correct use of the AssociableHotspot attributes. The set of rules are:-
                                * RULE INTERACTION-RELATED 3a-Assertion 1 :- The MatchMax attribute value, provided it is not 0, must not be less than the MatchMin value.

                                RULE_SET_INTERACTION-RELATED_4: Enforce the correct use of the SimpleAssociableChoice attributes. The set of rules are:-
                                * RULE INTERACTION-RELATED 4a-Assertion 1 :- The MatchMax attribute value, provided it is not 0, must not be less than the MatchMin value.

                                RULE_SET_INTERACTION_01: Enforce the correct use of the TextEntryInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 1a-Assertion 1 :- The StringIdentifier and ResponseIdentifier attribute values must not be the same.
                                * RULE INTERACTION 1b-Assertion 1 :- The baseType must have a value of either string, float or integer.

                                RULE_SET_INTERACTION_02: Enforce the correct use of the ChoiceInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 2a-Assertion 1 :- The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value.

                                RULE_SET_INTERACTION_03: Enforce the correct use of the ExtendedTextInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 3a-Assertion 1 :- The StringIdentifier and ResponseIdentifier attribute values must not be the same.

                                RULE_SET_INTERACTION_04: Enforce the correct use of the HotspotInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 4a-Assertion 1 :- The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value.

                                RULE_SET_INTERACTION_05: Enforce the correct use of the GraphicOrderInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 5a-Assertion 1 :- The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value.

                                RULE_SET_INTERACTION_06: Enforce the correct use of the PositionObjectInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 6a-Assertion 1 :- The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value.

                                RULE_SET_INTERACTION_07: Enforce the correct use of the SelectPointInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 7a-Assertion 1 :- The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value.

                                RULE_SET_INTERACTION_08: Enforce the correct use of the OrderInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 8a-Assertion 1 :- The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value.

                                RULE_SET_INTERACTION_09: Enforce the correct use of the HotTextInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 9a-Assertion 1 :- The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value.

                                RULE_SET_INTERACTION_10: Enforce the correct use of the GraphicAssociateInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 10a-Assertion 1 :- The MaxAssociations attribute value, provided it is not 0, must not be less than the MinAssociations value.

                                RULE_SET_INTERACTION_11: Enforce the correct use of the MatchInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 11a-Assertion 1 :- The MaxAssociations attribute value, provided it is not 0, must not be less than the MinAssociations value.

                                RULE_SET_INTERACTION_12: Enforce the correct use of the AssociateInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 12a-Assertion 1 :- The MaxAssociations attribute value, provided it is not 0, must not be less than the MinAssociations value.

                                RULE_SET_INTERACTION_13: Enforce the correct use of the MediaInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 13a-Assertion 1 :- The MaxPlays attribute value must not be less than the MinPlays value.

                                RULE_SET_INTERACTION_14: Enforce the correct use of the SliderInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 14a-Assertion 1 :- The UpperBound attribute value must not be less than the LowerBound value.

                                RULE_SET_INTERACTION_15: Enforce the correct use of the DrawingInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 15a-Assertion 1 :- The baseType must have a value of file.

                                RULE_SET_INTERACTION_16: Enforce the correct use of the UploadInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 16a-Assertion 1 :- The baseType must have a value of file.

                                RULE_SET_INTERACTION_17: Enforce the correct use of the EndAttemptInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 17a-Assertion 1 :- The baseType must have a value of boolean.

                                RULE_SET_INTERACTION_18: Enforce the correct use of the GapMatchInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 18a-Assertion 1 :- The baseType must have a value of directedPair.
                                * RULE INTERACTION 18a-Assertion 2 :- The MaxAssociations attribute value, provided it is not 0, must not be less than the MinAssociations value.

                                RULE_SET_INTERACTION_19: Enforce the correct use of the GraphicGapMatchInteraction attributes. The set of rules are:-
                                * RULE INTERACTION 19a-Assertion 1 :- The baseType must have a value of directedPair.

                                RULE_SET_SPECIFIC_CLASS_1: Enforce the correct use of the OutcomeDeclaration attributes. The set of rules are:-
                                * RULE SPECIFIC CLASS 1a-Assertion 1 :- The MasteryValue attribute value must not be less than the NormalMinimum value.
                                * RULE SPECIFIC CLASS 1a-Assertion 2 :- The MasteryValue attribute value must not be greater than the NormalMaximum value.

                                RULE_SET_SPECIFIC_CLASS_2: Enforce the correct use of the TimeLimits attributes. The set of rules are:-
                                * RULE SPECIFIC CLASS 2a-Assertion 1 :- The MaxTime attribute value must not be less than the MinTime value.

                History:        Version 1.0: The first set of schematron rules for the IMS Global QTIv2.2 specification. Version 1.0.1: The schematron rules for the extensions of the 'language' and 'base' characterisics have been corrected to refer to 'xml:lang' and 'xml:base' respectively. Version 1.0.2: Corrections to the Schematron rules to enforce numeric comparisons using the 'number()' function.

            </xs:documentation>

            <xs:appinfo>
                <sch:ns uri="http://www.imsglobal.org/xsd/imsqti_v2p2" prefix="qti" />
                <sch:title>Schematron Validation Rules for QTI Specification v2.2.</sch:title>

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_GENERAL_1">
                    <sch:title>Ensure that certain expressions are NOT used for Response Processing.</sch:title>

                    <sch:rule abstract="false" context="//qti:assessmentItem/qti:responseProcessing">
                        <sch:assert test="count(descendant::qti:numberCorrect) = 0">
                            [RULE GENERAL 1a: Assertion 1] The expression numberCorrect must NOT be used in ResponseProcessing.<sch:value-of select="concat('The Assessment Item identifier is:', ../@identifier)" />
                        </sch:assert>
                        <sch:assert test="count(descendant::qti:numberIncorrect) = 0">
                            [RULE GENERAL 1a: Assertion 2] The expression numberIncorrect must NOT be used in ResponseProcessing.<sch:value-of select="concat('The Assessment Item identifier is:', ../@identifier)" />
                        </sch:assert>
                        <sch:assert test="count(descendant::qti:numberPresented) = 0">
                            [RULE GENERAL 1a: Assertion 3] The expression numberPresented must NOT be used in ResponseProcessing.<sch:value-of select="concat('The Assessment Item identifier is:', ../@identifier)" />
                        </sch:assert>
                        <sch:assert test="count(descendant::qti:numberResponded) = 0">
                            [RULE GENERAL 1a: Assertion 4] The expression numberResponded must NOT be used in ResponseProcessing.<sch:value-of select="concat('The Assessment Item identifier is:', ../@identifier)" />
                        </sch:assert>
                        <sch:assert test="count(descendant::qti:numberSelected) = 0">
                            [RULE GENERAL 1a: Assertion 5] The expression numberSelected must NOT be used in ResponseProcessing.<sch:value-of select="concat('The Assessment Item identifier is:', ../@identifier)" />
                        </sch:assert>
                        <sch:assert test="count(descendant::qti:outcomeMinimum) = 0">
                            [RULE GENERAL 1a: Assertion 6] The expression outcomeMinimum must NOT be used in ResponseProcessing.<sch:value-of select="concat('The Assessment Item identifier is:', ../@identifier)" />
                        </sch:assert>
                        <sch:assert test="count(descendant::qti:outcomeMaximum) = 0">
                            [RULE GENERAL 1a: Assertion 7] The expression outcomeMaximum must NOT be used in ResponseProcessing.<sch:value-of select="concat('The Assessment Item identifier is:', ../@identifier)" />
                        </sch:assert>
                        <sch:assert test="count(descendant::qti:testVariables) = 0">
                            [RULE GENERAL 1a: Assertion 8] The expression testVariables must NOT be used in ResponseProcessing.<sch:value-of select="concat('The Assessment Item identifier is:', ../@identifier)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_GENERAL_2">
                    <sch:title>Ensure that the Item, Section, Test and TestPart identifiers are unique.</sch:title>

                    <sch:rule abstract="false" context="//qti:assessmentTest">
                        <sch:assert test="not(@identifier=qti:testPart/@identifier)">
                            [RULE GENERAL 2a: Assertion 1] The AssessmentTest and a TestPart must not have the same unique identifier.<sch:value-of select="concat('The AssessmentTest identifier is:', @identifier)" />
                        </sch:assert>
                        <sch:assert test="not(@identifier=qti:testPart/descendant::qti:assessmentSection/@identifier)">
                            [RULE GENERAL 2a: Assertion 2] The AssessmentTest and an AssessmentSection must not have the same unique identifier.<sch:value-of select="concat('The AssessmentTest identifier is:', @identifier)" />
                        </sch:assert>
                        <sch:assert test="not(@identifier=qti:testPart/qti:assessmentSectionRef/@identifier)">
                            [RULE GENERAL 2a: Assertion 3] The AssessmentTest and a direct child AssessmentSectionRef must not have the same unique identifier.<sch:value-of select="concat('The AssessmentTest identifier is:', @identifier)" />
                        </sch:assert>
                        <sch:assert test="not(@identifier=qti:testPart/descendant::qti:assessmentSection/qti:assessmentSectionRef/@identifier)">
                            [RULE GENERAL 2a: Assertion 4] The AssessmentTest and a descendant AssessmentSectionRef must not have the same unique identifier.<sch:value-of select="concat('The AssessmentTest identifier is:', @identifier)" />
                        </sch:assert>
                        <sch:assert test="not(@identifier=qti:testPart/descendant::qti:assessmentSection/qti:assessmentItemRef/@identifier)">
                            [RULE GENERAL 2a: Assertion 5] The AssessmentTest and a descendant AssessmentItemRef must not have the same unique identifier.<sch:value-of select="concat('The AssessmentTest identifier is:', @identifier)" />
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:assessmentTest/qti:testPart">
                        <sch:assert test="not(@identifier=preceding-sibling::qti:testPart/@identifier)">
                            [RULE GENERAL 2b: Assertion 1] Two TestParts must not have the same unique identifier.<sch:value-of select="concat('The TestPart identifier is:', @identifier)" />
                        </sch:assert>
                        <sch:assert test="not(@identifier=descendant::qti:assessmentSection/@identifier)">
                            [RULE GENERAL 2b: Assertion 2] The TestPart and an AssessmentSection must not have the same unique identifier.<sch:value-of select="concat('The TestPart identifier is:', @identifier)" />
                        </sch:assert>
                        <sch:assert test="not(@identifier=qti:assessmentSectionRef/@identifier)">
                            [RULE GENERAL 2b: Assertion 3] The TestPart and a direct child AssessmentSectionRef must not have the same unique identifier.<sch:value-of select="concat('The TestPart identifier is:', @identifier)" />
                        </sch:assert>
                        <sch:assert test="not(@identifier=descendant::qti:assessmentSection/qti:assessmentSectionRef/@identifier)">
                            [RULE GENERAL 2b: Assertion 4] The TestPart and a descendant AssessmentSectionRef must not have the same unique identifier.<sch:value-of select="concat('The TestPart identifier is:', @identifier)" />
                        </sch:assert>
                        <sch:assert test="not(@identifier=descendant::qti:assessmentSection/qti:assessmentItemRef/@identifier)">
                            [RULE GENERAL 2b: Assertion 5] The TestPart and a descendant AssessmentItemRef must not have the same unique identifier.<sch:value-of select="concat('The TestPart identifier is:', @identifier)" />
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:assessmentTest/qti:testPart/qti:assessmentSection">
                        <sch:assert test="not(@identifier=preceding-sibling::qti:assessmentSection/@identifier)">
                            [RULE GENERAL 2c: Assertion 1] Two AssessmentSection children of a TestPart must not have the same unique identifier.<sch:value-of select="concat('The AssessmentSection identifier is:', @identifier)" />
                        </sch:assert>
                        <sch:assert test="not(@identifier=descendant::qti:assessmentSection/@identifier)">
                            [RULE GENERAL 2c: Assertion 2] The AssessmentSection and a descendant AssessmentSection must not have the same unique identifier.<sch:value-of select="concat('The AssessmentSection identifier is:', @identifier)" />
                        </sch:assert>
                        <sch:assert test="not(@identifier=descendant::qti:assessmentSectionRef/@identifier)">
                            [RULE GENERAL 2c: Assertion 3] The AssessmentSection and a descendant AssessmentSectionRef must not have the same unique identifier.<sch:value-of select="concat('The AssessmentSection identifier is:', @identifier)" />
                        </sch:assert>
                        <sch:assert test="not(@identifier=descendant::qti:assessmentItemRef/@identifier)">
                            [RULE GENERAL 2c: Assertion 4] The AssessmentSection and a descendant AssessmentItemRef must not have the same unique identifier.<sch:value-of select="concat('The AssessmentSection identifier is:', @identifier)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION-RELATED_1">
                    <sch:title>Enforce the correct use of the GapText attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:gapText">
                        <sch:assert test="not(not(number(@matchMax)=0) and number(@matchMax) < number(@matchMin))">
                            [RULE INTERACTION-RELATED 1a: Assertion 1] The MatchMax attribute value, provided it is not 0, must not be less than the MatchMin value.<sch:value-of select="concat('The MatchMax value is:', @matchMax)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION-RELATED_2">
                    <sch:title>Enforce the correct use of the GapImg attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:gapImg">
                        <sch:assert test="not(not(number(@matchMax)=0) and number(@matchMax) < number(@matchMin))">
                            [RULE INTERACTION-RELATED 2a: Assertion 1] The MatchMax attribute value, provided it is not 0, must not be less than the MatchMin value.<sch:value-of select="concat('The MatchMax value is:', @matchMax)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION-RELATED_3">
                    <sch:title>Enforce the correct use of the AssociableHotspot attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:associableHotspot">
                        <sch:assert test="not(not(number(@matchMax)=0) and number(@matchMax) < number(@matchMin))">
                            [RULE INTERACTION-RELATED 3a: Assertion 1] The MatchMax attribute value, provided it is not 0, must not be less than the MatchMin value.<sch:value-of select="concat('The MatchMax value is:', @matchMax)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION-RELATED_4">
                    <sch:title>Enforce the correct use of the SimpleAssociableChoice attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:simpleAssociableChoice">
                        <sch:assert test="not(not(number(@matchMax)=0) and number(@matchMax) < number(@matchMin))">
                            [RULE INTERACTION-RELATED 4a: Assertion 1] The MatchMax attribute value, provided it is not 0, must not be less than the MatchMin value.<sch:value-of select="concat('The MatchMax value is:', @matchMax)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_01">
                    <sch:title>Enforce the correct use of the TextEntryInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:textEntryInteraction">
                        <sch:assert test="not(@stringIdentifier=@responseIdentifier)">
                            [RULE INTERACTION 1a: Assertion 1] The StringIdentifier and ResponseIdentifier attribute values must not be the same.<sch:value-of select="concat('The StringIdentifier value is:', @stringIdentifier)" />
                        </sch:assert>
                    </sch:rule>

                    <sch:rule abstract="false" context="//qti:textEntryInteraction[@responseIdentifier=//qti:responseDeclaration/@identifier]">
                        <sch:assert test="//qti:responseDeclaration[@baseType='string'] or //qti:responseDeclaration[@baseType='float'] or //qti:responseDeclaration[@baseType='integer']">
                            [RULE INTERACTION 1b: Assertion 1] The baseType must have a value of either string, float or integer.<sch:value-of select="concat('The BaseType value is:', //qti:responseDeclaration/@baseType)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_02">
                    <sch:title>Enforce the correct use of the ChoiceInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:choiceInteraction">
                        <sch:assert test="not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))">
                            [RULE INTERACTION 2a: Assertion 1] The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value.<sch:value-of select="concat('The MaxChoices value is:', @maxChoices)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_03">
                    <sch:title>Enforce the correct use of the ExtendedTextInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:extendedTextInteraction">
                        <sch:assert test="not(@stringIdentifier=@responseIdentifier)">
                            [RULE INTERACTION 3a: Assertion 1] The StringIdentifier and ResponseIdentifier attribute values must not be the same.<sch:value-of select="concat('The StringIdentifier value is:', @stringIdentifier)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_04">
                    <sch:title>Enforce the correct use of the HotspotInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:hotspotInteraction">
                        <sch:assert test="not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))">
                            [RULE INTERACTION 4a: Assertion 1] The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value.<sch:value-of select="concat('The MaxChoices value is:', @maxChoices)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_05">
                    <sch:title>Enforce the correct use of the GraphicOrderInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:graphicOrderInteraction">
                        <sch:assert test="not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))">
                            [RULE INTERACTION 5a: Assertion 1] The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value.<sch:value-of select="concat('The MaxChoices value is:', @maxChoices)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_06">
                    <sch:title>Enforce the correct use of the PositionObjectInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:positionObjectInteraction">
                        <sch:assert test="not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))">
                            [RULE INTERACTION 6a: Assertion 1] The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value.<sch:value-of select="concat('The MaxChoices value is:', @maxChoices)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_07">
                    <sch:title>Enforce the correct use of the SelectPointInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:selectPointInteraction">
                        <sch:assert test="not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))">
                            [RULE INTERACTION 7a: Assertion 1] The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value.<sch:value-of select="concat('The MaxChoices value is:', @maxChoices)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_08">
                    <sch:title>Enforce the correct use of the OrderInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:orderInteraction">
                        <sch:assert test="not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))">
                            [RULE INTERACTION 8a: Assertion 1] The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value.<sch:value-of select="concat('The MaxChoices value is:', @maxChoices)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_09">
                    <sch:title>Enforce the correct use of the HotTextInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:hottextInteraction">
                        <sch:assert test="not(not(number(@maxChoices)=0) and number(@maxChoices) < number(@minChoices))">
                            [RULE INTERACTION 9a: Assertion 1] The MaxChoices attribute value, provided it is not 0, must not be less than the MinChoices value.<sch:value-of select="concat('The MaxChoices value is:', @maxChoices)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_10">
                    <sch:title>Enforce the correct use of the GraphicAssociateInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:graphicAssociateInteraction">
                        <sch:assert test="not(not(number(@maxAssociations)=0) and number(@maxAssociations) < number(@minAssociations))">
                            [RULE INTERACTION 10a: Assertion 1] The MaxAssociations attribute value, provided it is not 0, must not be less than the MinAssociations value.<sch:value-of select="concat('The MaxAssociations value is:', @maxAssociations)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_11">
                    <sch:title>Enforce the correct use of the MatchInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:matchInteraction">
                        <sch:assert test="not(not(number(@maxAssociations)=0) and number(@maxAssociations) < number(@minAssociations))">
                            [RULE INTERACTION 11a: Assertion 1] The MaxAssociations attribute value, provided it is not 0, must not be less than the MinAssociations value.<sch:value-of select="concat('The MaxAssociations value is:', @maxAssociations)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_12">
                    <sch:title>Enforce the correct use of the AssociateInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:associateInteraction">
                        <sch:assert test="not(not(number(@maxAssociations)=0) and number(@maxAssociations) < number(@minAssociations))">
                            [RULE INTERACTION 12a: Assertion 1] The MaxAssociations attribute value, provided it is not 0, must not be less than the MinAssociations value.<sch:value-of select="concat('The MaxAssociations value is:', @maxAssociations)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_13">
                    <sch:title>Enforce the correct use of the MediaInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:mediaInteraction">
                        <sch:assert test="not(number(@maxPlays) < number(@minPlays))">
                            [RULE INTERACTION 13a: Assertion 1] The MaxPlays attribute value must not be less than the MinPlays value.<sch:value-of select="concat('The MaxPlays value is:', @maxPlays)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_14">
                    <sch:title>Enforce the correct use of the SliderInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:sliderInteraction">
                        <sch:assert test="not(number(@upperBound) < number(@lowerBound))">
                            [RULE INTERACTION 14a: Assertion 1] The UpperBound attribute value must not be less than the LowerBound value.<sch:value-of select="concat('The UpperBound value is:', @upperBound)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_15">
                    <sch:title>Enforce the correct use of the DrawingInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:drawingInteraction">
                        <sch:assert test="//qti:responseDeclaration[@baseType='file']">
                            [RULE INTERACTION 15a: Assertion 1] The baseType must have a value of file.<sch:value-of select="concat('The BaseType value is:', //qti:responseDeclaration/@baseType)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_16">
                    <sch:title>Enforce the correct use of the UploadInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:uploadInteraction">
                        <sch:assert test="//qti:responseDeclaration[@baseType='file']">
                            [RULE INTERACTION 16a: Assertion 1] The baseType must have a value of file.<sch:value-of select="concat('The BaseType value is:', //qti:responseDeclaration/@baseType)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_17">
                    <sch:title>Enforce the correct use of the EndAttemptInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:endAttemptInteraction">
                        <sch:assert test="//qti:responseDeclaration[@baseType='boolean']">
                            [RULE INTERACTION 17a: Assertion 1] The baseType must have a value of boolean.<sch:value-of select="concat('The BaseType value is:', //qti:responseDeclaration/@baseType)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_18">
                    <sch:title>Enforce the correct use of the GapMatchInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:gapMatchInteraction">
                        <sch:assert test="//qti:responseDeclaration[@baseType='directedPair']">
                            [RULE INTERACTION 18a: Assertion 1] The baseType must have a value of directedPair.<sch:value-of select="concat('The BaseType value is:', //qti:responseDeclaration/@baseType)" />
                        </sch:assert>
                        <sch:assert test="not(not(number(@maxAssociations)=0) and number(@maxAssociations) < number(@minAssociations))">
                            [RULE INTERACTION 18a: Assertion 2] The MaxAssociations attribute value, provided it is not 0, must not be less than the MinAssociations value.<sch:value-of select="concat('The MaxAssociations value is:', @maxAssociations)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_INTERACTION_19">
                    <sch:title>Enforce the correct use of the GraphicGapMatchInteraction attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:graphicGapMatchInteraction">
                        <sch:assert test="//qti:responseDeclaration[@baseType='directedPair']">
                            [RULE INTERACTION 19a: Assertion 1] The baseType must have a value of directedPair.<sch:value-of select="concat('The BaseType value is:', //qti:responseDeclaration/@baseType)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_SPECIFIC_CLASS_1">
                    <sch:title>Enforce the correct use of the OutcomeDeclaration attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:outcomeDeclaration">
                        <sch:assert test="not(number(@masteryValue) < number(@normalMinimum))">
                            [RULE SPECIFIC CLASS 1a: Assertion 1] The MasteryValue attribute value must not be less than the NormalMinimum value.<sch:value-of select="concat('The MasteryValue value is:', @masteryValue)" />
                        </sch:assert>
                        <sch:assert test="not(number(@masteryValue) > number(@normalMaximum))">
                            [RULE SPECIFIC CLASS 1a: Assertion 2] The MasteryValue attribute value must not be greater than the NormalMaximum value.<sch:value-of select="concat('The MasteryValue value is:', @masteryValue)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

                <!-- RULESET ******************************************************************* -->
                <sch:pattern abstract="false" id="RULE_SET_SPECIFIC_CLASS_2">
                    <sch:title>Enforce the correct use of the TimeLimits attributes.</sch:title>

                    <sch:rule abstract="false" context="//qti:timeLimits">
                        <sch:assert test="not(number(@maxTime) < number(@minTime))">
                            [RULE SPECIFIC CLASS 2a: Assertion 1] The MaxTime attribute value must not be less than the MinTime value.<sch:value-of select="concat('The MaxTime value is:', @maxTime)" />
                        </sch:assert>
                    </sch:rule>

                </sch:pattern>
                <!-- *************************************************************************** -->

            </xs:appinfo>
        </xs:annotation>

        <!-- Generate Global Attributes (non-assigned) ******************************************************** -->

        <!-- ================================================================================================== -->

        <!-- Generate Global Attributes *********************************************************************** -->

        <xs:attributeGroup name="href.A.Attr">
            <xs:attribute name="href" use="required" type="xs:anyURI" />
        </xs:attributeGroup>

        <xs:attributeGroup name="type.A.Attr">
            <xs:attribute name="type" use="optional" type="MimeType.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="max.AnyN.Attr">
            <xs:attribute name="max" use="required">
                <xs:simpleType>
                    <xs:union>
                        <xs:simpleType>
                            <xs:restriction base="xs:integer" />
                        </xs:simpleType>
                        <xs:simpleType>
                            <xs:restriction base="VariableString.Type" />
                        </xs:simpleType>
                    </xs:union>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="min.AnyN.Attr">
            <xs:attribute name="min" use="required">
                <xs:simpleType>
                    <xs:union>
                        <xs:simpleType>
                            <xs:restriction base="xs:integer" />
                        </xs:simpleType>
                        <xs:simpleType>
                            <xs:restriction base="VariableString.Type" />
                        </xs:simpleType>
                    </xs:union>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="coords.AreaMapEntry.Attr">
            <xs:attribute name="coords" use="required" type="Coords.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="mappedValue.AreaMapEntry.Attr">
            <xs:attribute name="mappedValue" use="required" type="xs:double" />
        </xs:attributeGroup>

        <xs:attributeGroup name="shape.AreaMapEntry.Attr">
            <xs:attribute name="shape" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="circle" />
                        <xs:enumeration value="default" />
                        <xs:enumeration value="ellipse" />
                        <xs:enumeration value="poly" />
                        <xs:enumeration value="rect" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="defaultValue.AreaMapping.Attr">
            <xs:attribute name="defaultValue" use="optional" default="0" type="xs:double" />
        </xs:attributeGroup>

        <xs:attributeGroup name="lowerBound.AreaMapping.Attr">
            <xs:attribute name="lowerBound" use="optional" type="xs:double" />
        </xs:attributeGroup>

        <xs:attributeGroup name="upperBound.AreaMapping.Attr">
            <xs:attribute name="upperBound" use="optional" type="xs:double" />
        </xs:attributeGroup>

        <xs:attributeGroup name="adaptive.AssessmentItem.Attr">
            <xs:attribute name="adaptive" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.AssessmentItem.Attr">
            <xs:attribute name="identifier" use="required" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="label.AssessmentItem.Attr">
            <xs:attribute name="label" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="language.AssessmentItem.Attr">
            <xs:attribute ref="xml:lang" use="optional" />
        </xs:attributeGroup>

        <xs:attributeGroup name="timeDependent.AssessmentItem.Attr">
            <xs:attribute name="timeDependent" use="required" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="title.AssessmentItem.Attr">
            <xs:attribute name="title" use="required" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="toolName.AssessmentItem.Attr">
            <xs:attribute name="toolName" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="toolVersion.AssessmentItem.Attr">
            <xs:attribute name="toolVersion" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="category.AssessmentItemRef.Attr">
            <xs:attribute name="category" use="optional">
                <xs:simpleType>
                    <xs:list itemType="IdentifierList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="fixed.AssessmentItemRef.Attr">
            <xs:attribute name="fixed" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="href.AssessmentItemRef.Attr">
            <xs:attribute name="href" use="required" type="xs:anyURI" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.AssessmentItemRef.Attr">
            <xs:attribute name="identifier" use="required" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="required.AssessmentItemRef.Attr">
            <xs:attribute name="required" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="fixed.AssessmentSection.Attr">
            <xs:attribute name="fixed" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.AssessmentSection.Attr">
            <xs:attribute name="identifier" use="required" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="keepTogether.AssessmentSection.Attr">
            <xs:attribute name="keepTogether" use="optional" default="true" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="required.AssessmentSection.Attr">
            <xs:attribute name="required" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="title.AssessmentSection.Attr">
            <xs:attribute name="title" use="required" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="visible.AssessmentSection.Attr">
            <xs:attribute name="visible" use="required" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="href.AssessmentSectionRef.Attr">
            <xs:attribute name="href" use="required" type="xs:anyURI" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.AssessmentSectionRef.Attr">
            <xs:attribute name="identifier" use="required" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.AssessmentStimulus.Attr">
            <xs:attribute name="identifier" use="required" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="label.AssessmentStimulus.Attr">
            <xs:attribute name="label" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="language.AssessmentStimulus.Attr">
            <xs:attribute ref="xml:lang" use="optional" />
        </xs:attributeGroup>

        <xs:attributeGroup name="title.AssessmentStimulus.Attr">
            <xs:attribute name="title" use="required" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="toolName.AssessmentStimulus.Attr">
            <xs:attribute name="toolName" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="toolVersion.AssessmentStimulus.Attr">
            <xs:attribute name="toolVersion" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="href.AssessmentStimulusRef.Attr">
            <xs:attribute name="href" use="required" type="xs:anyURI" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.AssessmentStimulusRef.Attr">
            <xs:attribute name="identifier" use="required" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.AssessmentTest.Attr">
            <xs:attribute name="identifier" use="required" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="title.AssessmentTest.Attr">
            <xs:attribute name="title" use="required" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="toolName.AssessmentTest.Attr">
            <xs:attribute name="toolName" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="toolVersion.AssessmentTest.Attr">
            <xs:attribute name="toolVersion" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="coords.AssociableHotspot.Attr">
            <xs:attribute name="coords" use="required" type="Coords.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="hotspotLabel.AssociableHotspot.Attr">
            <xs:attribute name="hotspotLabel" use="optional" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.AssociableHotspot.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="matchGroup.AssociableHotspot.Attr">
            <xs:attribute name="matchGroup" use="optional">
                <xs:simpleType>
                    <xs:list itemType="IdentifierList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="matchMax.AssociableHotspot.Attr">
            <xs:attribute name="matchMax" use="required" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="matchMin.AssociableHotspot.Attr">
            <xs:attribute name="matchMin" use="optional" default="0" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="shape.AssociableHotspot.Attr">
            <xs:attribute name="shape" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="circle" />
                        <xs:enumeration value="default" />
                        <xs:enumeration value="ellipse" />
                        <xs:enumeration value="poly" />
                        <xs:enumeration value="rect" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.AssociableHotspot.Attr">
            <xs:attribute name="showHide" use="optional" default="show">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="templateIdentifier.AssociableHotspot.Attr">
            <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="maxAssociations.AssociateInteraction.Attr">
            <xs:attribute name="maxAssociations" use="optional" default="1" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="minAssociations.AssociateInteraction.Attr">
            <xs:attribute name="minAssociations" use="optional" default="0" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="shuffle.AssociateInteraction.Attr">
            <xs:attribute name="shuffle" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-controls.BasePromptInteraction.Attr">
            <xs:attribute name="aria-controls" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-describedby.BasePromptInteraction.Attr">
            <xs:attribute name="aria-describedby" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-flowsto.BasePromptInteraction.Attr">
            <xs:attribute name="aria-flowsto" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-label.BasePromptInteraction.Attr">
            <xs:attribute name="aria-label" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-labelledby.BasePromptInteraction.Attr">
            <xs:attribute name="aria-labelledby" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-level.BasePromptInteraction.Attr">
            <xs:attribute name="aria-level" use="optional" type="ARIALevelInteger.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-live.BasePromptInteraction.Attr">
            <xs:attribute name="aria-live" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="off" />
                        <xs:enumeration value="polite" />
                        <xs:enumeration value="assertive" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-orientation.BasePromptInteraction.Attr">
            <xs:attribute name="aria-orientation" use="optional" default="horizontal">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="vertical" />
                        <xs:enumeration value="horizontal" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-owns.BasePromptInteraction.Attr">
            <xs:attribute name="aria-owns" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="base.BasePromptInteraction.Attr">
            <xs:attribute ref="xml:base" use="optional" />
        </xs:attributeGroup>

        <xs:attributeGroup name="class.BasePromptInteraction.Attr">
            <xs:attribute name="class" use="optional">
                <xs:simpleType>
                    <xs:list itemType="StringList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="dataExtension.BasePromptInteraction.Attr">
            <xs:anyAttribute namespace = "##any" processContents = "lax" />
        </xs:attributeGroup>

        <xs:attributeGroup name="dir.BasePromptInteraction.Attr">
            <xs:attribute name="dir" use="optional" default="auto">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="ltr" />
                        <xs:enumeration value="rtl" />
                        <xs:enumeration value="auto" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="id.BasePromptInteraction.Attr">
            <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="label.BasePromptInteraction.Attr">
            <xs:attribute name="label" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="language.BasePromptInteraction.Attr">
            <xs:attribute ref="xml:lang" use="optional" />
        </xs:attributeGroup>

        <xs:attributeGroup name="responseIdentifier.BasePromptInteraction.Attr">
            <xs:attribute name="responseIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="role.BasePromptInteraction.Attr">
            <xs:attribute name="role" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="article" />
                        <xs:enumeration value="columnheader" />
                        <xs:enumeration value="definition" />
                        <xs:enumeration value="directory" />
                        <xs:enumeration value="document" />
                        <xs:enumeration value="group" />
                        <xs:enumeration value="heading" />
                        <xs:enumeration value="img" />
                        <xs:enumeration value="list" />
                        <xs:enumeration value="listitem" />
                        <xs:enumeration value="math" />
                        <xs:enumeration value="note" />
                        <xs:enumeration value="presentation" />
                        <xs:enumeration value="region" />
                        <xs:enumeration value="row" />
                        <xs:enumeration value="rowgroup" />
                        <xs:enumeration value="rowheader" />
                        <xs:enumeration value="separator" />
                        <xs:enumeration value="toolbar" />
                        <xs:enumeration value="button" />
                        <xs:enumeration value="checkbox" />
                        <xs:enumeration value="gridcell" />
                        <xs:enumeration value="link" />
                        <xs:enumeration value="log" />
                        <xs:enumeration value="option" />
                        <xs:enumeration value="radio" />
                        <xs:enumeration value="slider" />
                        <xs:enumeration value="spinbutton" />
                        <xs:enumeration value="status" />
                        <xs:enumeration value="tab" />
                        <xs:enumeration value="tabpanel" />
                        <xs:enumeration value="textbox" />
                        <xs:enumeration value="timer" />
                        <xs:enumeration value="listbox" />
                        <xs:enumeration value="radiogroup" />
                        <xs:enumeration value="tablist" />
                        <xs:enumeration value="complementary" />
                        <xs:enumeration value="contentinfo" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-controls.BaseSequence.Attr">
            <xs:attribute name="aria-controls" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-describedby.BaseSequence.Attr">
            <xs:attribute name="aria-describedby" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-flowto.BaseSequence.Attr">
            <xs:attribute name="aria-flowto" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-label.BaseSequence.Attr">
            <xs:attribute name="aria-label" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-labelledby.BaseSequence.Attr">
            <xs:attribute name="aria-labelledby" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-level.BaseSequence.Attr">
            <xs:attribute name="aria-level" use="optional" type="ARIALevelInteger.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-live.BaseSequence.Attr">
            <xs:attribute name="aria-live" use="optional" default="off">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="off" />
                        <xs:enumeration value="polite" />
                        <xs:enumeration value="assertive" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-orientation.BaseSequence.Attr">
            <xs:attribute name="aria-orientation" use="optional" default="horizontal">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="vertical" />
                        <xs:enumeration value="horizontal" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-owns.BaseSequence.Attr">
            <xs:attribute name="aria-owns" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="class.BaseSequence.Attr">
            <xs:attribute name="class" use="optional">
                <xs:simpleType>
                    <xs:list itemType="StringList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="dataExtension.BaseSequence.Attr">
            <xs:anyAttribute namespace = "##any" processContents = "lax" />
        </xs:attributeGroup>

        <xs:attributeGroup name="dir.BaseSequence.Attr">
            <xs:attribute name="dir" use="optional" default="auto">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="ltr" />
                        <xs:enumeration value="rtl" />
                        <xs:enumeration value="auto" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="id.BaseSequence.Attr">
            <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="label.BaseSequence.Attr">
            <xs:attribute name="label" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="language.BaseSequence.Attr">
            <xs:attribute ref="xml:lang" use="optional" />
        </xs:attributeGroup>

        <xs:attributeGroup name="role.BaseSequence.Attr">
            <xs:attribute name="role" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="article" />
                        <xs:enumeration value="columnheader" />
                        <xs:enumeration value="definition" />
                        <xs:enumeration value="directory" />
                        <xs:enumeration value="document" />
                        <xs:enumeration value="group" />
                        <xs:enumeration value="heading" />
                        <xs:enumeration value="img" />
                        <xs:enumeration value="list" />
                        <xs:enumeration value="listitem" />
                        <xs:enumeration value="math" />
                        <xs:enumeration value="note" />
                        <xs:enumeration value="presentation" />
                        <xs:enumeration value="region" />
                        <xs:enumeration value="row" />
                        <xs:enumeration value="rowgroup" />
                        <xs:enumeration value="rowheader" />
                        <xs:enumeration value="separator" />
                        <xs:enumeration value="toolbar" />
                        <xs:enumeration value="button" />
                        <xs:enumeration value="checkbox" />
                        <xs:enumeration value="gridcell" />
                        <xs:enumeration value="link" />
                        <xs:enumeration value="log" />
                        <xs:enumeration value="option" />
                        <xs:enumeration value="radio" />
                        <xs:enumeration value="slider" />
                        <xs:enumeration value="spinbutton" />
                        <xs:enumeration value="status" />
                        <xs:enumeration value="tab" />
                        <xs:enumeration value="tabpanel" />
                        <xs:enumeration value="textbox" />
                        <xs:enumeration value="timer" />
                        <xs:enumeration value="listbox" />
                        <xs:enumeration value="radiogroup" />
                        <xs:enumeration value="tablist" />
                        <xs:enumeration value="complementary" />
                        <xs:enumeration value="contentinfo" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-controls.BaseSequenceFull.Attr">
            <xs:attribute name="aria-controls" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-describedby.BaseSequenceFull.Attr">
            <xs:attribute name="aria-describedby" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-flowto.BaseSequenceFull.Attr">
            <xs:attribute name="aria-flowto" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-label.BaseSequenceFull.Attr">
            <xs:attribute name="aria-label" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-labelledby.BaseSequenceFull.Attr">
            <xs:attribute name="aria-labelledby" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-level.BaseSequenceFull.Attr">
            <xs:attribute name="aria-level" use="optional" type="ARIALevelInteger.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-live.BaseSequenceFull.Attr">
            <xs:attribute name="aria-live" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="off" />
                        <xs:enumeration value="polite" />
                        <xs:enumeration value="assertive" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-orientation.BaseSequenceFull.Attr">
            <xs:attribute name="aria-orientation" use="optional" default="horizontal">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="vertical" />
                        <xs:enumeration value="horizontal" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-owns.BaseSequenceFull.Attr">
            <xs:attribute name="aria-owns" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="base.BaseSequenceFull.Attr">
            <xs:attribute ref="xml:base" use="optional" />
        </xs:attributeGroup>

        <xs:attributeGroup name="class.BaseSequenceFull.Attr">
            <xs:attribute name="class" use="optional">
                <xs:simpleType>
                    <xs:list itemType="StringList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="dataExtension.BaseSequenceFull.Attr">
            <xs:anyAttribute namespace = "##any" processContents = "lax" />
        </xs:attributeGroup>

        <xs:attributeGroup name="dir.BaseSequenceFull.Attr">
            <xs:attribute name="dir" use="optional" default="auto">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="ltr" />
                        <xs:enumeration value="rtl" />
                        <xs:enumeration value="auto" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="id.BaseSequenceFull.Attr">
            <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="label.BaseSequenceFull.Attr">
            <xs:attribute name="label" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="language.BaseSequenceFull.Attr">
            <xs:attribute ref="xml:lang" use="optional" />
        </xs:attributeGroup>

        <xs:attributeGroup name="responseIdentifier.BaseSequenceFull.Attr">
            <xs:attribute name="responseIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="role.BaseSequenceFull.Attr">
            <xs:attribute name="role" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="article" />
                        <xs:enumeration value="columnheader" />
                        <xs:enumeration value="definition" />
                        <xs:enumeration value="directory" />
                        <xs:enumeration value="document" />
                        <xs:enumeration value="group" />
                        <xs:enumeration value="heading" />
                        <xs:enumeration value="img" />
                        <xs:enumeration value="list" />
                        <xs:enumeration value="listitem" />
                        <xs:enumeration value="math" />
                        <xs:enumeration value="note" />
                        <xs:enumeration value="presentation" />
                        <xs:enumeration value="region" />
                        <xs:enumeration value="row" />
                        <xs:enumeration value="rowgroup" />
                        <xs:enumeration value="rowheader" />
                        <xs:enumeration value="separator" />
                        <xs:enumeration value="toolbar" />
                        <xs:enumeration value="button" />
                        <xs:enumeration value="checkbox" />
                        <xs:enumeration value="gridcell" />
                        <xs:enumeration value="link" />
                        <xs:enumeration value="log" />
                        <xs:enumeration value="option" />
                        <xs:enumeration value="radio" />
                        <xs:enumeration value="slider" />
                        <xs:enumeration value="spinbutton" />
                        <xs:enumeration value="status" />
                        <xs:enumeration value="tab" />
                        <xs:enumeration value="tabpanel" />
                        <xs:enumeration value="textbox" />
                        <xs:enumeration value="timer" />
                        <xs:enumeration value="listbox" />
                        <xs:enumeration value="radiogroup" />
                        <xs:enumeration value="tablist" />
                        <xs:enumeration value="complementary" />
                        <xs:enumeration value="contentinfo" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-controls.BaseSequenceRIdent.Attr">
            <xs:attribute name="aria-controls" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-describedby.BaseSequenceRIdent.Attr">
            <xs:attribute name="aria-describedby" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-flowto.BaseSequenceRIdent.Attr">
            <xs:attribute name="aria-flowto" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-label.BaseSequenceRIdent.Attr">
            <xs:attribute name="aria-label" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-labelledby.BaseSequenceRIdent.Attr">
            <xs:attribute name="aria-labelledby" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-level.BaseSequenceRIdent.Attr">
            <xs:attribute name="aria-level" use="optional" type="ARIALevelInteger.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-live.BaseSequenceRIdent.Attr">
            <xs:attribute name="aria-live" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="off" />
                        <xs:enumeration value="polite" />
                        <xs:enumeration value="assertive" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-orientation.BaseSequenceRIdent.Attr">
            <xs:attribute name="aria-orientation" use="optional" default="horizontal">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="vertical" />
                        <xs:enumeration value="horizontal" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-owns.BaseSequenceRIdent.Attr">
            <xs:attribute name="aria-owns" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="class.BaseSequenceRIdent.Attr">
            <xs:attribute name="class" use="optional">
                <xs:simpleType>
                    <xs:list itemType="StringList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="dataExtension.BaseSequenceRIdent.Attr">
            <xs:anyAttribute namespace = "##any" processContents = "lax" />
        </xs:attributeGroup>

        <xs:attributeGroup name="dir.BaseSequenceRIdent.Attr">
            <xs:attribute name="dir" use="optional" default="auto">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="ltr" />
                        <xs:enumeration value="rtl" />
                        <xs:enumeration value="auto" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="id.BaseSequenceRIdent.Attr">
            <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="label.BaseSequenceRIdent.Attr">
            <xs:attribute name="label" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="language.BaseSequenceRIdent.Attr">
            <xs:attribute ref="xml:lang" use="optional" />
        </xs:attributeGroup>

        <xs:attributeGroup name="responseIdentifier.BaseSequenceRIdent.Attr">
            <xs:attribute name="responseIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="role.BaseSequenceRIdent.Attr">
            <xs:attribute name="role" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="article" />
                        <xs:enumeration value="columnheader" />
                        <xs:enumeration value="definition" />
                        <xs:enumeration value="directory" />
                        <xs:enumeration value="document" />
                        <xs:enumeration value="group" />
                        <xs:enumeration value="heading" />
                        <xs:enumeration value="img" />
                        <xs:enumeration value="list" />
                        <xs:enumeration value="listitem" />
                        <xs:enumeration value="math" />
                        <xs:enumeration value="note" />
                        <xs:enumeration value="presentation" />
                        <xs:enumeration value="region" />
                        <xs:enumeration value="row" />
                        <xs:enumeration value="rowgroup" />
                        <xs:enumeration value="rowheader" />
                        <xs:enumeration value="separator" />
                        <xs:enumeration value="toolbar" />
                        <xs:enumeration value="button" />
                        <xs:enumeration value="checkbox" />
                        <xs:enumeration value="gridcell" />
                        <xs:enumeration value="link" />
                        <xs:enumeration value="log" />
                        <xs:enumeration value="option" />
                        <xs:enumeration value="radio" />
                        <xs:enumeration value="slider" />
                        <xs:enumeration value="spinbutton" />
                        <xs:enumeration value="status" />
                        <xs:enumeration value="tab" />
                        <xs:enumeration value="tabpanel" />
                        <xs:enumeration value="textbox" />
                        <xs:enumeration value="timer" />
                        <xs:enumeration value="listbox" />
                        <xs:enumeration value="radiogroup" />
                        <xs:enumeration value="tablist" />
                        <xs:enumeration value="complementary" />
                        <xs:enumeration value="contentinfo" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-controls.BaseSequenceXBase.Attr">
            <xs:attribute name="aria-controls" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-describedby.BaseSequenceXBase.Attr">
            <xs:attribute name="aria-describedby" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-flowto.BaseSequenceXBase.Attr">
            <xs:attribute name="aria-flowto" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-label.BaseSequenceXBase.Attr">
            <xs:attribute name="aria-label" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-labelledby.BaseSequenceXBase.Attr">
            <xs:attribute name="aria-labelledby" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-level.BaseSequenceXBase.Attr">
            <xs:attribute name="aria-level" use="optional" type="ARIALevelInteger.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-live.BaseSequenceXBase.Attr">
            <xs:attribute name="aria-live" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="off" />
                        <xs:enumeration value="polite" />
                        <xs:enumeration value="assertive" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-orientation.BaseSequenceXBase.Attr">
            <xs:attribute name="aria-orientation" use="optional" default="horizontal">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="vertical" />
                        <xs:enumeration value="horizontal" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-owns.BaseSequenceXBase.Attr">
            <xs:attribute name="aria-owns" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="base.BaseSequenceXBase.Attr">
            <xs:attribute ref="xml:base" use="optional" />
        </xs:attributeGroup>

        <xs:attributeGroup name="class.BaseSequenceXBase.Attr">
            <xs:attribute name="class" use="optional">
                <xs:simpleType>
                    <xs:list itemType="StringList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="dataExtension.BaseSequenceXBase.Attr">
            <xs:anyAttribute namespace = "##any" processContents = "lax" />
        </xs:attributeGroup>

        <xs:attributeGroup name="dir.BaseSequenceXBase.Attr">
            <xs:attribute name="dir" use="optional" default="auto">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="ltr" />
                        <xs:enumeration value="rtl" />
                        <xs:enumeration value="auto" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="id.BaseSequenceXBase.Attr">
            <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="label.BaseSequenceXBase.Attr">
            <xs:attribute name="label" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="language.BaseSequenceXBase.Attr">
            <xs:attribute ref="xml:lang" use="optional" />
        </xs:attributeGroup>

        <xs:attributeGroup name="role.BaseSequenceXBase.Attr">
            <xs:attribute name="role" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="article" />
                        <xs:enumeration value="columnheader" />
                        <xs:enumeration value="definition" />
                        <xs:enumeration value="directory" />
                        <xs:enumeration value="document" />
                        <xs:enumeration value="group" />
                        <xs:enumeration value="heading" />
                        <xs:enumeration value="img" />
                        <xs:enumeration value="list" />
                        <xs:enumeration value="listitem" />
                        <xs:enumeration value="math" />
                        <xs:enumeration value="note" />
                        <xs:enumeration value="presentation" />
                        <xs:enumeration value="region" />
                        <xs:enumeration value="row" />
                        <xs:enumeration value="rowgroup" />
                        <xs:enumeration value="rowheader" />
                        <xs:enumeration value="separator" />
                        <xs:enumeration value="toolbar" />
                        <xs:enumeration value="button" />
                        <xs:enumeration value="checkbox" />
                        <xs:enumeration value="gridcell" />
                        <xs:enumeration value="link" />
                        <xs:enumeration value="log" />
                        <xs:enumeration value="option" />
                        <xs:enumeration value="radio" />
                        <xs:enumeration value="slider" />
                        <xs:enumeration value="spinbutton" />
                        <xs:enumeration value="status" />
                        <xs:enumeration value="tab" />
                        <xs:enumeration value="tabpanel" />
                        <xs:enumeration value="textbox" />
                        <xs:enumeration value="timer" />
                        <xs:enumeration value="listbox" />
                        <xs:enumeration value="radiogroup" />
                        <xs:enumeration value="tablist" />
                        <xs:enumeration value="complementary" />
                        <xs:enumeration value="contentinfo" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-controls.BaseSequenceXBaseEmpty.Attr">
            <xs:attribute name="aria-controls" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-describedby.BaseSequenceXBaseEmpty.Attr">
            <xs:attribute name="aria-describedby" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-flowsto.BaseSequenceXBaseEmpty.Attr">
            <xs:attribute name="aria-flowsto" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-label.BaseSequenceXBaseEmpty.Attr">
            <xs:attribute name="aria-label" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-labelledby.BaseSequenceXBaseEmpty.Attr">
            <xs:attribute name="aria-labelledby" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-level.BaseSequenceXBaseEmpty.Attr">
            <xs:attribute name="aria-level" use="optional" type="ARIALevelInteger.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-live.BaseSequenceXBaseEmpty.Attr">
            <xs:attribute name="aria-live" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="off" />
                        <xs:enumeration value="polite" />
                        <xs:enumeration value="assertive" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-orientation.BaseSequenceXBaseEmpty.Attr">
            <xs:attribute name="aria-orientation" use="optional" default="horizontal">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="vertical" />
                        <xs:enumeration value="horizontal" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="aria-owns.BaseSequenceXBaseEmpty.Attr">
            <xs:attribute name="aria-owns" use="optional" type="xs:IDREFS" />
        </xs:attributeGroup>

        <xs:attributeGroup name="base.BaseSequenceXBaseEmpty.Attr">
            <xs:attribute ref="xml:base" use="optional" />
        </xs:attributeGroup>

        <xs:attributeGroup name="class.BaseSequenceXBaseEmpty.Attr">
            <xs:attribute name="class" use="optional">
                <xs:simpleType>
                    <xs:list itemType="StringList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="dataExtension.BaseSequenceXBaseEmpty.Attr">
            <xs:anyAttribute namespace = "##any" processContents = "lax" />
        </xs:attributeGroup>

        <xs:attributeGroup name="dir.BaseSequenceXBaseEmpty.Attr">
            <xs:attribute name="dir" use="optional" default="auto">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="ltr" />
                        <xs:enumeration value="rtl" />
                        <xs:enumeration value="auto" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="id.BaseSequenceXBaseEmpty.Attr">
            <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="label.BaseSequenceXBaseEmpty.Attr">
            <xs:attribute name="label" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="language.BaseSequenceXBaseEmpty.Attr">
            <xs:attribute ref="xml:lang" use="optional" />
        </xs:attributeGroup>

        <xs:attributeGroup name="role.BaseSequenceXBaseEmpty.Attr">
            <xs:attribute name="role" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="article" />
                        <xs:enumeration value="columnheader" />
                        <xs:enumeration value="definition" />
                        <xs:enumeration value="directory" />
                        <xs:enumeration value="document" />
                        <xs:enumeration value="group" />
                        <xs:enumeration value="heading" />
                        <xs:enumeration value="img" />
                        <xs:enumeration value="list" />
                        <xs:enumeration value="listitem" />
                        <xs:enumeration value="math" />
                        <xs:enumeration value="note" />
                        <xs:enumeration value="presentation" />
                        <xs:enumeration value="region" />
                        <xs:enumeration value="row" />
                        <xs:enumeration value="rowgroup" />
                        <xs:enumeration value="rowheader" />
                        <xs:enumeration value="separator" />
                        <xs:enumeration value="toolbar" />
                        <xs:enumeration value="button" />
                        <xs:enumeration value="checkbox" />
                        <xs:enumeration value="gridcell" />
                        <xs:enumeration value="link" />
                        <xs:enumeration value="log" />
                        <xs:enumeration value="option" />
                        <xs:enumeration value="radio" />
                        <xs:enumeration value="slider" />
                        <xs:enumeration value="spinbutton" />
                        <xs:enumeration value="status" />
                        <xs:enumeration value="tab" />
                        <xs:enumeration value="tabpanel" />
                        <xs:enumeration value="textbox" />
                        <xs:enumeration value="timer" />
                        <xs:enumeration value="listbox" />
                        <xs:enumeration value="radiogroup" />
                        <xs:enumeration value="tablist" />
                        <xs:enumeration value="complementary" />
                        <xs:enumeration value="contentinfo" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="baseType.BaseValue.Attr">
            <xs:attribute name="baseType" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="boolean" />
                        <xs:enumeration value="directedPair" />
                        <xs:enumeration value="duration" />
                        <xs:enumeration value="file" />
                        <xs:enumeration value="float" />
                        <xs:enumeration value="identifier" />
                        <xs:enumeration value="integer" />
                        <xs:enumeration value="pair" />
                        <xs:enumeration value="point" />
                        <xs:enumeration value="string" />
                        <xs:enumeration value="uri" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="title.BDO.Attr">
            <xs:attribute name="title" use="optional" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="cite.BlockQuote.Attr">
            <xs:attribute name="cite" use="optional" type="xs:anyURI" />
        </xs:attributeGroup>

        <xs:attributeGroup name="target.BranchRule.Attr">
            <xs:attribute name="target" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="maxChoices.ChoiceInteraction.Attr">
            <xs:attribute name="maxChoices" use="optional" default="1" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="minChoices.ChoiceInteraction.Attr">
            <xs:attribute name="minChoices" use="optional" default="0" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="orientation.ChoiceInteraction.Attr">
            <xs:attribute name="orientation" use="optional" default="vertical">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="horizontal" />
                        <xs:enumeration value="vertical" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="shuffle.ChoiceInteraction.Attr">
            <xs:attribute name="shuffle" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="span.Col.Attr">
            <xs:attribute name="span" use="optional" type="xs:int" />
        </xs:attributeGroup>

        <xs:attributeGroup name="span.ColGroup.Attr">
            <xs:attribute name="span" use="optional" type="xs:int" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.Correct.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="interpretation.CorrectResponse.Attr">
            <xs:attribute name="interpretation" use="optional" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="extension.CustomInteraction.Attr">
            <xs:anyAttribute namespace = "##other" processContents = "lax" />
        </xs:attributeGroup>

        <xs:attributeGroup name="class.CustomOperator.Attr">
            <xs:attribute name="class" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="definition.CustomOperator.Attr">
            <xs:attribute name="definition" use="optional" type="xs:anyURI" />
        </xs:attributeGroup>

        <xs:attributeGroup name="extension.CustomOperator.Attr">
            <xs:anyAttribute namespace = "##other" processContents = "lax" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.Default.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="interpretation.DefaultValue.Attr">
            <xs:attribute name="interpretation" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="countAttempt.EndAttemptInteraction.Attr">
            <xs:attribute name="countAttempt" use="optional" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="responseIdentifier.EndAttemptInteraction.Attr">
            <xs:attribute name="responseIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="title.EndAttemptInteraction.Attr">
            <xs:attribute name="title" use="required" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="includeLowerBound.Equal.Attr">
            <xs:attribute name="includeLowerBound" use="optional" default="true" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="includeUpperBound.Equal.Attr">
            <xs:attribute name="includeUpperBound" use="optional" default="true" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="tolerance.Equal.Attr">
            <xs:attribute name="tolerance" use="optional">
                <xs:simpleType>
                    <xs:list itemType="ToleranceList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="toleranceMode.Equal.Attr">
            <xs:attribute name="toleranceMode" use="optional" default="exact">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="absolute" />
                        <xs:enumeration value="exact" />
                        <xs:enumeration value="relative" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="figures.EqualRounded.Attr">
            <xs:attribute name="figures" use="required">
                <xs:simpleType>
                    <xs:union>
                        <xs:simpleType>
                            <xs:restriction base="xs:integer" />
                        </xs:simpleType>
                        <xs:simpleType>
                            <xs:restriction base="VariableString.Type" />
                        </xs:simpleType>
                    </xs:union>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="roundingMode.EqualRounded.Attr">
            <xs:attribute name="roundingMode" use="optional" default="significantFigures">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="decimalPlaces" />
                        <xs:enumeration value="significantFigures" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="base.ExtendedTextInteraction.Attr">
            <xs:attribute name="base" use="optional" default="10" type="xs:int" />
        </xs:attributeGroup>

        <xs:attributeGroup name="expectedLength.ExtendedTextInteraction.Attr">
            <xs:attribute name="expectedLength" use="optional" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="expectedLines.ExtendedTextInteraction.Attr">
            <xs:attribute name="expectedLines" use="optional" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="format.ExtendedTextInteraction.Attr">
            <xs:attribute name="format" use="optional" default="plain">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="plain" />
                        <xs:enumeration value="preformatted" />
                        <xs:enumeration value="xhtml" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="maxStrings.ExtendedTextInteraction.Attr">
            <xs:attribute name="maxStrings" use="optional" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="minStrings.ExtendedTextInteraction.Attr">
            <xs:attribute name="minStrings" use="optional" default="0" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="patternMask.ExtendedTextInteraction.Attr">
            <xs:attribute name="patternMask" use="optional" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="placeholderText.ExtendedTextInteraction.Attr">
            <xs:attribute name="placeholderText" use="optional" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="stringIdentifier.ExtendedTextInteraction.Attr">
            <xs:attribute name="stringIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.FeedbackBlock.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="outcomeIdentifier.FeedbackBlock.Attr">
            <xs:attribute name="outcomeIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.FeedbackBlock.Attr">
            <xs:attribute name="showHide" use="optional" default="show">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.FeedbackInline.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="outcomeIdentifier.FeedbackInline.Attr">
            <xs:attribute name="outcomeIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.FeedbackInline.Attr">
            <xs:attribute name="showHide" use="optional" default="show">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="fieldIdentifier.FieldValue.Attr">
            <xs:attribute name="fieldIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.Gap.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="matchGroup.Gap.Attr">
            <xs:attribute name="matchGroup" use="optional">
                <xs:simpleType>
                    <xs:list itemType="IdentifierList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="required.Gap.Attr">
            <xs:attribute name="required" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.Gap.Attr">
            <xs:attribute name="showHide" use="optional" default="show">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="templateIdentifier.Gap.Attr">
            <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.GapImg.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="left.GapImg.Attr">
            <xs:attribute name="left" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="matchGroup.GapImg.Attr">
            <xs:attribute name="matchGroup" use="optional">
                <xs:simpleType>
                    <xs:list itemType="IdentifierList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="matchMax.GapImg.Attr">
            <xs:attribute name="matchMax" use="required" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="matchMin.GapImg.Attr">
            <xs:attribute name="matchMin" use="optional" default="0" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="objectLabel.GapImg.Attr">
            <xs:attribute name="objectLabel" use="optional" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.GapImg.Attr">
            <xs:attribute name="showHide" use="optional" default="show">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="templateIdentifier.GapImg.Attr">
            <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="top.GapImg.Attr">
            <xs:attribute name="top" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="maxAssociations.GapMatchInteraction.Attr">
            <xs:attribute name="maxAssociations" use="optional" default="1" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="minAssociations.GapMatchInteraction.Attr">
            <xs:attribute name="minAssociations" use="optional" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="shuffle.GapMatchInteraction.Attr">
            <xs:attribute name="shuffle" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.GapText.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="matchGroup.GapText.Attr">
            <xs:attribute name="matchGroup" use="optional">
                <xs:simpleType>
                    <xs:list itemType="IdentifierList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="matchMax.GapText.Attr">
            <xs:attribute name="matchMax" use="required" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="matchMin.GapText.Attr">
            <xs:attribute name="matchMin" use="optional" default="0" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.GapText.Attr">
            <xs:attribute name="showHide" use="optional" default="show">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="templateIdentifier.GapText.Attr">
            <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="maxAssociations.GraphicAssociateInteraction.Attr">
            <xs:attribute name="maxAssociations" use="optional" default="1" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="minAssociations.GraphicAssociateInteraction.Attr">
            <xs:attribute name="minAssociations" use="optional" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="maxAssociations.GraphicGapMatchInteraction.Attr">
            <xs:attribute name="maxAssociations" use="optional" default="1" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="minAssociations.GraphicGapMatchInteraction.Attr">
            <xs:attribute name="minAssociations" use="optional" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="maxChoices.GraphicOrderInteraction.Attr">
            <xs:attribute name="maxChoices" use="optional" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="minChoices.GraphicOrderInteraction.Attr">
            <xs:attribute name="minChoices" use="optional" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="coords.HotspotChoice.Attr">
            <xs:attribute name="coords" use="required" type="Coords.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="hotspotLabel.HotspotChoice.Attr">
            <xs:attribute name="hotspotLabel" use="optional" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.HotspotChoice.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="shape.HotspotChoice.Attr">
            <xs:attribute name="shape" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="circle" />
                        <xs:enumeration value="default" />
                        <xs:enumeration value="ellipse" />
                        <xs:enumeration value="poly" />
                        <xs:enumeration value="rect" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.HotspotChoice.Attr">
            <xs:attribute name="showHide" use="optional" default="show">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="templateIdentifier.HotspotChoice.Attr">
            <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="maxChoices.HotspotInteraction.Attr">
            <xs:attribute name="maxChoices" use="optional" default="1" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="minChoices.HotspotInteraction.Attr">
            <xs:attribute name="minChoices" use="optional" default="0" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.HotText.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.HotText.Attr">
            <xs:attribute name="showHide" use="optional" default="show">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="templateIdentifier.HotText.Attr">
            <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="maxChoices.HotTextInteraction.Attr">
            <xs:attribute name="maxChoices" use="optional" default="1" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="minChoices.HotTextInteraction.Attr">
            <xs:attribute name="minChoices" use="optional" default="0" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="alt.Img.Attr">
            <xs:attribute name="alt" use="required" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="height.Img.Attr">
            <xs:attribute name="height" use="optional" type="Length.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="longdesc.Img.Attr">
            <xs:attribute name="longdesc" use="optional" type="xs:anyURI" />
        </xs:attributeGroup>

        <xs:attributeGroup name="src.Img.Attr">
            <xs:attribute name="src" use="required" type="xs:anyURI" />
        </xs:attributeGroup>

        <xs:attributeGroup name="width.Img.Attr">
            <xs:attribute name="width" use="optional" type="Length.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="n.Index.Attr">
            <xs:attribute name="n" use="required">
                <xs:simpleType>
                    <xs:union>
                        <xs:simpleType>
                            <xs:restriction base="xs:NCName" />
                        </xs:simpleType>
                        <xs:simpleType>
                            <xs:restriction base="xs:int" />
                        </xs:simpleType>
                    </xs:union>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="title.InfoControl.Attr">
            <xs:attribute name="title" use="required" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="fixed.InlineChoice.Attr">
            <xs:attribute name="fixed" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.InlineChoice.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.InlineChoice.Attr">
            <xs:attribute name="showHide" use="optional" default="show">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="templateIdentifier.InlineChoice.Attr">
            <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="required.InlineChoiceInteraction.Attr">
            <xs:attribute name="required" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="shuffle.InlineChoiceInteraction.Attr">
            <xs:attribute name="shuffle" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="coords.Inside.Attr">
            <xs:attribute name="coords" use="required" type="Coords.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="shape.Inside.Attr">
            <xs:attribute name="shape" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="circle" />
                        <xs:enumeration value="default" />
                        <xs:enumeration value="ellipse" />
                        <xs:enumeration value="poly" />
                        <xs:enumeration value="rect" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="defaultValue.InterpolationTable.Attr">
            <xs:attribute name="defaultValue" use="optional" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="includeBoundary.InterpolationTableEntry.Attr">
            <xs:attribute name="includeBoundary" use="optional" default="true" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="sourceValue.InterpolationTableEntry.Attr">
            <xs:attribute name="sourceValue" use="required" type="xs:double" />
        </xs:attributeGroup>

        <xs:attributeGroup name="targetValue.InterpolationTableEntry.Attr">
            <xs:attribute name="targetValue" use="required" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="class.ItemBody.Attr">
            <xs:attribute name="class" use="optional">
                <xs:simpleType>
                    <xs:list itemType="StringList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="dir.ItemBody.Attr">
            <xs:attribute name="dir" use="optional" default="auto">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="ltr" />
                        <xs:enumeration value="rtl" />
                        <xs:enumeration value="auto" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="id.ItemBody.Attr">
            <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="label.ItemBody.Attr">
            <xs:attribute name="label" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="language.ItemBody.Attr">
            <xs:attribute ref="xml:lang" use="optional" />
        </xs:attributeGroup>

        <xs:attributeGroup name="allowComment.ItemSessionControl.Attr">
            <xs:attribute name="allowComment" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="allowReview.ItemSessionControl.Attr">
            <xs:attribute name="allowReview" use="optional" default="true" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="allowSkipping.ItemSessionControl.Attr">
            <xs:attribute name="allowSkipping" use="optional" default="true" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="maxAttempts.ItemSessionControl.Attr">
            <xs:attribute name="maxAttempts" use="optional" type="xs:int" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showFeedback.ItemSessionControl.Attr">
            <xs:attribute name="showFeedback" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showSolution.ItemSessionControl.Attr">
            <xs:attribute name="showSolution" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="validateResponses.ItemSessionControl.Attr">
            <xs:attribute name="validateResponses" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.LookupOutcomeValue.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="caseSensitive.MapEntry.Attr">
            <xs:attribute name="caseSensitive" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="mapKey.MapEntry.Attr">
            <xs:attribute name="mapKey" use="required" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="mappedValue.MapEntry.Attr">
            <xs:attribute name="mappedValue" use="required" type="xs:double" />
        </xs:attributeGroup>

        <xs:attributeGroup name="defaultValue.Mapping.Attr">
            <xs:attribute name="defaultValue" use="optional" default="0" type="xs:double" />
        </xs:attributeGroup>

        <xs:attributeGroup name="lowerBound.Mapping.Attr">
            <xs:attribute name="lowerBound" use="optional" type="xs:double" />
        </xs:attributeGroup>

        <xs:attributeGroup name="upperBound.Mapping.Attr">
            <xs:attribute name="upperBound" use="optional" type="xs:double" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.MapResponse.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="maxAssociations.MatchInteraction.Attr">
            <xs:attribute name="maxAssociations" use="optional" default="1" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="minAssociations.MatchInteraction.Attr">
            <xs:attribute name="minAssociations" use="optional" default="0" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="shuffle.MatchInteraction.Attr">
            <xs:attribute name="shuffle" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="defaultValue.MatchTable.Attr">
            <xs:attribute name="defaultValue" use="optional" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="sourceValue.MatchTableEntry.Attr">
            <xs:attribute name="sourceValue" use="required" type="xs:int" />
        </xs:attributeGroup>

        <xs:attributeGroup name="targetValue.MatchTableEntry.Attr">
            <xs:attribute name="targetValue" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="boolean" />
                        <xs:enumeration value="directedPair" />
                        <xs:enumeration value="duration" />
                        <xs:enumeration value="file" />
                        <xs:enumeration value="float" />
                        <xs:enumeration value="identifier" />
                        <xs:enumeration value="integer" />
                        <xs:enumeration value="pair" />
                        <xs:enumeration value="point" />
                        <xs:enumeration value="string" />
                        <xs:enumeration value="uri" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="name.MathConstant.Attr">
            <xs:attribute name="name" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="pi" />
                        <xs:enumeration value="e" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="name.MathOperator.Attr">
            <xs:attribute name="name" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="sin" />
                        <xs:enumeration value="cos" />
                        <xs:enumeration value="tan" />
                        <xs:enumeration value="sec" />
                        <xs:enumeration value="csc" />
                        <xs:enumeration value="cot" />
                        <xs:enumeration value="asin" />
                        <xs:enumeration value="acos" />
                        <xs:enumeration value="atan" />
                        <xs:enumeration value="atan2" />
                        <xs:enumeration value="asec" />
                        <xs:enumeration value="acsc" />
                        <xs:enumeration value="acot" />
                        <xs:enumeration value="sinh" />
                        <xs:enumeration value="cosh" />
                        <xs:enumeration value="tanh" />
                        <xs:enumeration value="sech" />
                        <xs:enumeration value="csch" />
                        <xs:enumeration value="coth" />
                        <xs:enumeration value="log" />
                        <xs:enumeration value="ln" />
                        <xs:enumeration value="exp" />
                        <xs:enumeration value="abs" />
                        <xs:enumeration value="signum" />
                        <xs:enumeration value="floor" />
                        <xs:enumeration value="ceil" />
                        <xs:enumeration value="toDegrees" />
                        <xs:enumeration value="toRadians" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="autostart.MediaInteraction.Attr">
            <xs:attribute name="autostart" use="required" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="coords.MediaInteraction.Attr">
            <xs:attribute name="coords" use="optional" type="Coords.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="loop.MediaInteraction.Attr">
            <xs:attribute name="loop" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="maxPlays.MediaInteraction.Attr">
            <xs:attribute name="maxPlays" use="optional" default="0" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="minPlays.MediaInteraction.Attr">
            <xs:attribute name="minPlays" use="optional" default="0" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.ModalFeedback.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="outcomeIdentifier.ModalFeedback.Attr">
            <xs:attribute name="outcomeIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.ModalFeedback.Attr">
            <xs:attribute name="showHide" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="title.ModalFeedback.Attr">
            <xs:attribute name="title" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="excludeCategory.Number.Attr">
            <xs:attribute name="excludeCategory" use="optional">
                <xs:simpleType>
                    <xs:list itemType="IdentifierList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="includeCategory.Number.Attr">
            <xs:attribute name="includeCategory" use="optional">
                <xs:simpleType>
                    <xs:list itemType="IdentifierList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="sectionIdentifier.Number.Attr">
            <xs:attribute name="sectionIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="data.Object.Attr">
            <xs:attribute name="data" use="required" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="height.Object.Attr">
            <xs:attribute name="height" use="optional" type="Length.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="type.Object.Attr">
            <xs:attribute name="type" use="required" type="MimeType.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="width.Object.Attr">
            <xs:attribute name="width" use="optional" type="Length.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="extension.Ordering.Attr">
            <xs:anyAttribute namespace = "##other" processContents = "strict" />
        </xs:attributeGroup>

        <xs:attributeGroup name="shuffle.Ordering.Attr">
            <xs:attribute name="shuffle" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="maxChoices.OrderInteraction.Attr">
            <xs:attribute name="maxChoices" use="optional" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="minChoices.OrderInteraction.Attr">
            <xs:attribute name="minChoices" use="optional" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="orientation.OrderInteraction.Attr">
            <xs:attribute name="orientation" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="horizontal" />
                        <xs:enumeration value="vertical" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="shuffle.OrderInteraction.Attr">
            <xs:attribute name="shuffle" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="baseType.OutcomeDeclaration.Attr">
            <xs:attribute name="baseType" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="boolean" />
                        <xs:enumeration value="directedPair" />
                        <xs:enumeration value="duration" />
                        <xs:enumeration value="file" />
                        <xs:enumeration value="float" />
                        <xs:enumeration value="identifier" />
                        <xs:enumeration value="integer" />
                        <xs:enumeration value="pair" />
                        <xs:enumeration value="point" />
                        <xs:enumeration value="string" />
                        <xs:enumeration value="uri" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="cardinality.OutcomeDeclaration.Attr">
            <xs:attribute name="cardinality" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="multiple" />
                        <xs:enumeration value="ordered" />
                        <xs:enumeration value="record" />
                        <xs:enumeration value="single" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="externalScored.OutcomeDeclaration.Attr">
            <xs:attribute name="externalScored" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="externalMachine" />
                        <xs:enumeration value="human" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.OutcomeDeclaration.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="interpretation.OutcomeDeclaration.Attr">
            <xs:attribute name="interpretation" use="optional" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="longInterpretation.OutcomeDeclaration.Attr">
            <xs:attribute name="longInterpretation" use="optional" type="xs:anyURI" />
        </xs:attributeGroup>

        <xs:attributeGroup name="masteryValue.OutcomeDeclaration.Attr">
            <xs:attribute name="masteryValue" use="optional" type="xs:double" />
        </xs:attributeGroup>

        <xs:attributeGroup name="normalMaximum.OutcomeDeclaration.Attr">
            <xs:attribute name="normalMaximum" use="optional" type="NonNegativeDouble.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="normalMinimum.OutcomeDeclaration.Attr">
            <xs:attribute name="normalMinimum" use="optional" type="xs:double" />
        </xs:attributeGroup>

        <xs:attributeGroup name="variableIdentifierRef.OutcomeDeclaration.Attr">
            <xs:attribute name="variableIdentifierRef" use="optional" type="UniqueIdentifierRef.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="view.OutcomeDeclaration.Attr">
            <xs:attribute name="view" use="optional">
                <xs:simpleType>
                    <xs:list itemType="View.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="excludeCategory.OutcomeMinMax.Attr">
            <xs:attribute name="excludeCategory" use="optional">
                <xs:simpleType>
                    <xs:list itemType="IdentifierList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="includeCategory.OutcomeMinMax.Attr">
            <xs:attribute name="includeCategory" use="optional">
                <xs:simpleType>
                    <xs:list itemType="IdentifierList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="outcomeIdentifier.OutcomeMinMax.Attr">
            <xs:attribute name="outcomeIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="sectionIdentifier.OutcomeMinMax.Attr">
            <xs:attribute name="sectionIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="weightIdentifier.OutcomeMinMax.Attr">
            <xs:attribute name="weightIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="name.Param.Attr">
            <xs:attribute name="name" use="required" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="type.Param.Attr">
            <xs:attribute name="type" use="optional" type="MimeType.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="value.Param.Attr">
            <xs:attribute name="value" use="required" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="valuetype.Param.Attr">
            <xs:attribute name="valuetype" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="DATA" />
                        <xs:enumeration value="REF" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="pattern.PatternMatch.Attr">
            <xs:attribute name="pattern" use="required">
                <xs:simpleType>
                    <xs:union>
                        <xs:simpleType>
                            <xs:restriction base="xs:string" />
                        </xs:simpleType>
                        <xs:simpleType>
                            <xs:restriction base="EncVariableString.Type" />
                        </xs:simpleType>
                    </xs:union>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="centerPoint.PositionObjectInteraction.Attr">
            <xs:attribute name="centerPoint" use="optional">
                <xs:simpleType>
                    <xs:list itemType="IntegerList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="maxChoices.PositionObjectInteraction.Attr">
            <xs:attribute name="maxChoices" use="optional" default="1" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="minChoices.PositionObjectInteraction.Attr">
            <xs:attribute name="minChoices" use="optional" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="id.PositionObjectStage.Attr">
            <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="base.PrintedVariable.Attr">
            <xs:attribute name="base" use="optional" default="10">
                <xs:simpleType>
                    <xs:union>
                        <xs:simpleType>
                            <xs:restriction base="xs:integer" />
                        </xs:simpleType>
                        <xs:simpleType>
                            <xs:restriction base="VariableString.Type" />
                        </xs:simpleType>
                    </xs:union>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="baseuri.PrintedVariable.Attr">
            <xs:attribute ref="xml:base" use="optional" />
        </xs:attributeGroup>

        <xs:attributeGroup name="class.PrintedVariable.Attr">
            <xs:attribute name="class" use="optional">
                <xs:simpleType>
                    <xs:list itemType="StringList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="delimiter.PrintedVariable.Attr">
            <xs:attribute name="delimiter" use="optional" default=";" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="field.PrintedVariable.Attr">
            <xs:attribute name="field" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="format.PrintedVariable.Attr">
            <xs:attribute name="format" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="id.PrintedVariable.Attr">
            <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.PrintedVariable.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="index.PrintedVariable.Attr">
            <xs:attribute name="index" use="optional">
                <xs:simpleType>
                    <xs:union>
                        <xs:simpleType>
                            <xs:restriction base="xs:integer" />
                        </xs:simpleType>
                        <xs:simpleType>
                            <xs:restriction base="VariableString.Type" />
                        </xs:simpleType>
                    </xs:union>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="label.PrintedVariable.Attr">
            <xs:attribute name="label" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="language.PrintedVariable.Attr">
            <xs:attribute ref="xml:lang" use="optional" />
        </xs:attributeGroup>

        <xs:attributeGroup name="mappingIndicator.PrintedVariable.Attr">
            <xs:attribute name="mappingIndicator" use="optional" default="=" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="powerForm.PrintedVariable.Attr">
            <xs:attribute name="powerForm" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="cite.Q.Attr">
            <xs:attribute name="cite" use="optional" type="xs:anyURI" />
        </xs:attributeGroup>

        <xs:attributeGroup name="max.RandomFloat.Attr">
            <xs:attribute name="max" use="required">
                <xs:simpleType>
                    <xs:union>
                        <xs:simpleType>
                            <xs:restriction base="xs:double" />
                        </xs:simpleType>
                        <xs:simpleType>
                            <xs:restriction base="VariableString.Type" />
                        </xs:simpleType>
                    </xs:union>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="min.RandomFloat.Attr">
            <xs:attribute name="min" use="optional" default="0">
                <xs:simpleType>
                    <xs:union>
                        <xs:simpleType>
                            <xs:restriction base="xs:double" />
                        </xs:simpleType>
                        <xs:simpleType>
                            <xs:restriction base="VariableString.Type" />
                        </xs:simpleType>
                    </xs:union>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="max.RandomInteger.Attr">
            <xs:attribute name="max" use="required">
                <xs:simpleType>
                    <xs:union>
                        <xs:simpleType>
                            <xs:restriction base="xs:integer" />
                        </xs:simpleType>
                        <xs:simpleType>
                            <xs:restriction base="VariableString.Type" />
                        </xs:simpleType>
                    </xs:union>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="min.RandomInteger.Attr">
            <xs:attribute name="min" use="optional" default="0">
                <xs:simpleType>
                    <xs:union>
                        <xs:simpleType>
                            <xs:restriction base="xs:integer" />
                        </xs:simpleType>
                        <xs:simpleType>
                            <xs:restriction base="VariableString.Type" />
                        </xs:simpleType>
                    </xs:union>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="step.RandomInteger.Attr">
            <xs:attribute name="step" use="optional" default="1">
                <xs:simpleType>
                    <xs:union>
                        <xs:simpleType>
                            <xs:restriction base="xs:integer" />
                        </xs:simpleType>
                        <xs:simpleType>
                            <xs:restriction base="VariableString.Type" />
                        </xs:simpleType>
                    </xs:union>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="numberRepeats.Repeat.Attr">
            <xs:attribute name="numberRepeats" use="required">
                <xs:simpleType>
                    <xs:union>
                        <xs:simpleType>
                            <xs:restriction base="xs:NCName" />
                        </xs:simpleType>
                        <xs:simpleType>
                            <xs:restriction base="xs:int" />
                        </xs:simpleType>
                    </xs:union>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="baseType.ResponseDeclaration.Attr">
            <xs:attribute name="baseType" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="boolean" />
                        <xs:enumeration value="directedPair" />
                        <xs:enumeration value="duration" />
                        <xs:enumeration value="file" />
                        <xs:enumeration value="float" />
                        <xs:enumeration value="identifier" />
                        <xs:enumeration value="integer" />
                        <xs:enumeration value="pair" />
                        <xs:enumeration value="point" />
                        <xs:enumeration value="string" />
                        <xs:enumeration value="uri" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="cardinality.ResponseDeclaration.Attr">
            <xs:attribute name="cardinality" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="multiple" />
                        <xs:enumeration value="ordered" />
                        <xs:enumeration value="record" />
                        <xs:enumeration value="single" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.ResponseDeclaration.Attr">
            <xs:attribute name="identifier" use="required" type="UniqueIdentifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="template.ResponseProcessing.Attr">
            <xs:attribute name="template" use="optional" type="xs:anyURI" />
        </xs:attributeGroup>

        <xs:attributeGroup name="templateLocation.ResponseProcessing.Attr">
            <xs:attribute name="templateLocation" use="optional" type="xs:anyURI" />
        </xs:attributeGroup>

        <xs:attributeGroup name="figures.RoundTo.Attr">
            <xs:attribute name="figures" use="required">
                <xs:simpleType>
                    <xs:union>
                        <xs:simpleType>
                            <xs:restriction base="xs:integer" />
                        </xs:simpleType>
                        <xs:simpleType>
                            <xs:restriction base="VariableString.Type" />
                        </xs:simpleType>
                    </xs:union>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="roundingMode.RoundTo.Attr">
            <xs:attribute name="roundingMode" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="decimalPlaces" />
                        <xs:enumeration value="significantFigures" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="use.RubricBlock.Attr">
            <xs:attribute name="use" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="view.RubricBlock.Attr">
            <xs:attribute name="view" use="required">
                <xs:simpleType>
                    <xs:list itemType="View.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.RubricBlockTemplateBlock.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.RubricBlockTemplateBlock.Attr">
            <xs:attribute name="showHide" use="optional" default="show">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="templateIdentifier.RubricBlockTemplateBlock.Attr">
            <xs:attribute name="templateIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.RubricBlockTemplateInline.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.RubricBlockTemplateInline.Attr">
            <xs:attribute name="showHide" use="optional" default="show">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="templateIdentifier.RubricBlockTemplateInline.Attr">
            <xs:attribute name="templateIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="extension.Selection.Attr">
            <xs:anyAttribute namespace = "##other" processContents = "strict" />
        </xs:attributeGroup>

        <xs:attributeGroup name="select.Selection.Attr">
            <xs:attribute name="select" use="required" type="xs:int" />
        </xs:attributeGroup>

        <xs:attributeGroup name="withReplacement.Selection.Attr">
            <xs:attribute name="withReplacement" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="maxChoices.SelectPointInteraction.Attr">
            <xs:attribute name="maxChoices" use="optional" default="0" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="minChoices.SelectPointInteraction.Attr">
            <xs:attribute name="minChoices" use="optional" default="0" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.SetValue.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="fixed.SimpleAssociableChoice.Attr">
            <xs:attribute name="fixed" use="optional" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.SimpleAssociableChoice.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="matchGroup.SimpleAssociableChoice.Attr">
            <xs:attribute name="matchGroup" use="optional">
                <xs:simpleType>
                    <xs:list itemType="IdentifierList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="matchMax.SimpleAssociableChoice.Attr">
            <xs:attribute name="matchMax" use="required" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="matchMin.SimpleAssociableChoice.Attr">
            <xs:attribute name="matchMin" use="optional" default="0" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.SimpleAssociableChoice.Attr">
            <xs:attribute name="showHide" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="templateIdentifier.SimpleAssociableChoice.Attr">
            <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="fixed.SimpleChoice.Attr">
            <xs:attribute name="fixed" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.SimpleChoice.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.SimpleChoice.Attr">
            <xs:attribute name="showHide" use="optional" default="show">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="templateIdentifier.SimpleChoice.Attr">
            <xs:attribute name="templateIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="id.SimpleMatchSet.Attr">
            <xs:attribute name="id" use="optional" type="UniqueIdentifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="lowerBound.SliderInteraction.Attr">
            <xs:attribute name="lowerBound" use="required" type="NonNegativeDouble.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="orientation.SliderInteraction.Attr">
            <xs:attribute name="orientation" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="horizontal" />
                        <xs:enumeration value="vertical" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="reverse.SliderInteraction.Attr">
            <xs:attribute name="reverse" use="optional" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="step.SliderInteraction.Attr">
            <xs:attribute name="step" use="optional" default="1.0" type="NonNegativeDouble.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="stepLabel.SliderInteraction.Attr">
            <xs:attribute name="stepLabel" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="upperBound.SliderInteraction.Attr">
            <xs:attribute name="upperBound" use="required" type="NonNegativeDouble.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="name.StatsOperator.Attr">
            <xs:attribute name="name" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="mean" />
                        <xs:enumeration value="sampleVariance" />
                        <xs:enumeration value="sampleSD" />
                        <xs:enumeration value="popVariance" />
                        <xs:enumeration value="popSD" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="caseSensitive.StringMatch.Attr">
            <xs:attribute name="caseSensitive" use="required" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="substring.StringMatch.Attr">
            <xs:attribute name="substring" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="href.StyleSheet.Attr">
            <xs:attribute name="href" use="required" type="xs:anyURI" />
        </xs:attributeGroup>

        <xs:attributeGroup name="media.StyleSheet.Attr">
            <xs:attribute name="media" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="title.StyleSheet.Attr">
            <xs:attribute name="title" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="type.StyleSheet.Attr">
            <xs:attribute name="type" use="required" type="MimeType.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="caseSensitive.Substring.Attr">
            <xs:attribute name="caseSensitive" use="required" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="summary.Table.Attr">
            <xs:attribute name="summary" use="optional" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="abbr.TDH.Attr">
            <xs:attribute name="abbr" use="optional" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="align.TDH.Attr">
            <xs:attribute name="align" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="left" />
                        <xs:enumeration value="center" />
                        <xs:enumeration value="right" />
                        <xs:enumeration value="justify" />
                        <xs:enumeration value="char" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="axis.TDH.Attr">
            <xs:attribute name="axis" use="optional" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="colspan.TDH.Attr">
            <xs:attribute name="colspan" use="optional" type="xs:int" />
        </xs:attributeGroup>

        <xs:attributeGroup name="headers.TDH.Attr">
            <xs:attribute name="headers" use="optional">
                <xs:simpleType>
                    <xs:list itemType="IdentifierList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="rowspan.TDH.Attr">
            <xs:attribute name="rowspan" use="optional" type="xs:int" />
        </xs:attributeGroup>

        <xs:attributeGroup name="scope.TDH.Attr">
            <xs:attribute name="scope" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="col" />
                        <xs:enumeration value="colgroup" />
                        <xs:enumeration value="row" />
                        <xs:enumeration value="rowgroup" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="valign.TDH.Attr">
            <xs:attribute name="valign" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="bottom" />
                        <xs:enumeration value="middle" />
                        <xs:enumeration value="top" />
                        <xs:enumeration value="baseline" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.TemplateBlock.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.TemplateBlock.Attr">
            <xs:attribute name="showHide" use="optional" default="show">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="templateIdentifier.TemplateBlock.Attr">
            <xs:attribute name="templateIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.TemplateBlockFeedbackBlock.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="outcomeIdentifier.TemplateBlockFeedbackBlock.Attr">
            <xs:attribute name="outcomeIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.TemplateBlockFeedbackBlock.Attr">
            <xs:attribute name="showHide" use="optional" default="show">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="baseType.TemplateDeclaration.Attr">
            <xs:attribute name="baseType" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="boolean" />
                        <xs:enumeration value="directedPair" />
                        <xs:enumeration value="duration" />
                        <xs:enumeration value="file" />
                        <xs:enumeration value="float" />
                        <xs:enumeration value="identifier" />
                        <xs:enumeration value="integer" />
                        <xs:enumeration value="pair" />
                        <xs:enumeration value="point" />
                        <xs:enumeration value="string" />
                        <xs:enumeration value="uri" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="cardinality.TemplateDeclaration.Attr">
            <xs:attribute name="cardinality" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="multiple" />
                        <xs:enumeration value="ordered" />
                        <xs:enumeration value="record" />
                        <xs:enumeration value="single" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.TemplateDeclaration.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="mathVariable.TemplateDeclaration.Attr">
            <xs:attribute name="mathVariable" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="paramVariable.TemplateDeclaration.Attr">
            <xs:attribute name="paramVariable" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="templateIdentifier.TemplateDefault.Attr">
            <xs:attribute name="templateIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.TemplateInline.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.TemplateInline.Attr">
            <xs:attribute name="showHide" use="optional" default="show">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="templateIdentifier.TemplateInline.Attr">
            <xs:attribute name="templateIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="access.TestFeedback.Attr">
            <xs:attribute name="access" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="atEnd" />
                        <xs:enumeration value="during" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.TestFeedback.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="outcomeIdentifier.TestFeedback.Attr">
            <xs:attribute name="outcomeIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="showHide.TestFeedback.Attr">
            <xs:attribute name="showHide" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="show" />
                        <xs:enumeration value="hide" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="title.TestFeedback.Attr">
            <xs:attribute name="title" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.TestPart.Attr">
            <xs:attribute name="identifier" use="required" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="navigationMode.TestPart.Attr">
            <xs:attribute name="navigationMode" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="linear" />
                        <xs:enumeration value="nonlinear" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="submissionMode.TestPart.Attr">
            <xs:attribute name="submissionMode" use="required">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="individual" />
                        <xs:enumeration value="simultaneous" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="baseType.TestVariables.Attr">
            <xs:attribute name="baseType" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="boolean" />
                        <xs:enumeration value="directedPair" />
                        <xs:enumeration value="duration" />
                        <xs:enumeration value="file" />
                        <xs:enumeration value="float" />
                        <xs:enumeration value="identifier" />
                        <xs:enumeration value="integer" />
                        <xs:enumeration value="pair" />
                        <xs:enumeration value="point" />
                        <xs:enumeration value="string" />
                        <xs:enumeration value="uri" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="excludeCategory.TestVariables.Attr">
            <xs:attribute name="excludeCategory" use="optional">
                <xs:simpleType>
                    <xs:list itemType="IdentifierList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="includeCategory.TestVariables.Attr">
            <xs:attribute name="includeCategory" use="optional">
                <xs:simpleType>
                    <xs:list itemType="IdentifierList.Type" />
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="sectionIdentifier.TestVariables.Attr">
            <xs:attribute name="sectionIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="variableIdentifier.TestVariables.Attr">
            <xs:attribute name="variableIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="weightIdentifier.TestVariables.Attr">
            <xs:attribute name="weightIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="base.TextEntryInteraction.Attr">
            <xs:attribute name="base" use="optional" default="10" type="xs:int" />
        </xs:attributeGroup>

        <xs:attributeGroup name="expectedLength.TextEntryInteraction.Attr">
            <xs:attribute name="expectedLength" use="optional" type="xs:nonNegativeInteger" />
        </xs:attributeGroup>

        <xs:attributeGroup name="format.TextEntryInteraction.Attr">
            <xs:attribute name="format" use="optional" type="xs:normalizedString" />
        </xs:attributeGroup>

        <xs:attributeGroup name="patternMask.TextEntryInteraction.Attr">
            <xs:attribute name="patternMask" use="optional" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="placeholderText.TextEntryInteraction.Attr">
            <xs:attribute name="placeholderText" use="optional" type="xs:string" />
        </xs:attributeGroup>

        <xs:attributeGroup name="responseIdentifier.TextEntryInteraction.Attr">
            <xs:attribute name="responseIdentifier" use="required" type="UniqueIdentifierRef.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="stringIdentifier.TextEntryInteraction.Attr">
            <xs:attribute name="stringIdentifier" use="optional" type="UniqueIdentifierRef.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="allowLateSubmission.TimeLimits.Attr">
            <xs:attribute name="allowLateSubmission" use="optional" default="false" type="xs:boolean" />
        </xs:attributeGroup>

        <xs:attributeGroup name="maxTime.TimeLimits.Attr">
            <xs:attribute name="maxTime" use="optional" type="NonNegativeDouble.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="minTime.TimeLimits.Attr">
            <xs:attribute name="minTime" use="optional" type="NonNegativeDouble.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="type.UploadInteraction.Attr">
            <xs:attribute name="type" use="optional" type="MimeType.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="baseType.Value.Attr">
            <xs:attribute name="baseType" use="optional">
                <xs:simpleType>
                    <xs:restriction base="xs:string">
                        <xs:enumeration value="boolean" />
                        <xs:enumeration value="directedPair" />
                        <xs:enumeration value="duration" />
                        <xs:enumeration value="file" />
                        <xs:enumeration value="float" />
                        <xs:enumeration value="identifier" />
                        <xs:enumeration value="integer" />
                        <xs:enumeration value="pair" />
                        <xs:enumeration value="point" />
                        <xs:enumeration value="string" />
                        <xs:enumeration value="uri" />
                    </xs:restriction>
                </xs:simpleType>
            </xs:attribute>
        </xs:attributeGroup>

        <xs:attributeGroup name="fieldIdentifier.Value.Attr">
            <xs:attribute name="fieldIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.Variable.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="weightIdentifier.Variable.Attr">
            <xs:attribute name="weightIdentifier" use="optional" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="sourceIdentifier.VariableMapping.Attr">
            <xs:attribute name="sourceIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="targetIdentifier.VariableMapping.Attr">
            <xs:attribute name="targetIdentifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="identifier.Weight.Attr">
            <xs:attribute name="identifier" use="required" type="Identifier.Type" />
        </xs:attributeGroup>

        <xs:attributeGroup name="value.Weight.Attr">
            <xs:attribute name="value" use="required" type="xs:double" />
        </xs:attributeGroup>

        <!-- ================================================================================================== -->

        <!-- Generate Global List Types *********************************************************************** -->

        <xs:simpleType name="IdentifierList.Type">
            <xs:restriction base="xs:NCName" />
        </xs:simpleType>

        <xs:simpleType name="IntegerList.Type">
            <xs:restriction base="xs:int" />
        </xs:simpleType>

        <xs:simpleType name="StringList.Type">
            <xs:restriction base="xs:string" />
        </xs:simpleType>

        <xs:simpleType name="ToleranceList.Type">
            <xs:union>
                <xs:simpleType>
                    <xs:restriction base="xs:string" />
                </xs:simpleType>
                <xs:simpleType>
                    <xs:restriction base="xs:double" />
                </xs:simpleType>
            </xs:union>
        </xs:simpleType>

        <xs:simpleType name="View.Type">
            <xs:restriction base="xs:string">
                <xs:enumeration value="author" />
                <xs:enumeration value="candidate" />
                <xs:enumeration value="proctor" />
                <xs:enumeration value="scorer" />
                <xs:enumeration value="testConstructor" />
                <xs:enumeration value="tutor" />
            </xs:restriction>
        </xs:simpleType>

        <!-- ================================================================================================== -->

        <!-- Generate Namespaced extension Group  ************************************************************* -->

        <xs:group name="grpLax.any">
            <xs:annotation>
                <xs:documentation>
                    Any namespaced element from any namespace, other than the target namespace, may be included within an "any" element.
                    The namespace for the imported element must be defined in the instance, and the schema must be imported.
                    The extension has a definition of "lax" i.e. validation is not required if the XSD for the extension is not available.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded" />
            </xs:sequence>
        </xs:group>

        <xs:group name="grpAnyLax.any">
            <xs:annotation>
                <xs:documentation>
                    Any namespaced element from any namespace may be included within an "any" element.
                    The namespace for the imported element must be defined in the instance, and the schema must be imported.
                    The extension has a definition of "lax" i.e. validation is not required if the XSD for the extension is not available.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:any namespace = "##any" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded" />
            </xs:sequence>
        </xs:group>

        <!-- ================================================================================================== -->

        <!-- Generate Special DataTypes  ********************************************************************** -->

        <xs:complexType name="EmptyPrimitiveType.Type">
            <xs:complexContent>
                <xs:restriction base="xs:anyType" />
            </xs:complexContent>
        </xs:complexType>

        <!-- ================================================================================================== -->

        <!-- Generate the enumerated simpleType declarations ************************************************** -->

        <!-- ================================================================================================== -->

        <!-- Generate the simpleType elements based on IMS data-types (Parameter) ***************************** -->

        <!-- ================================================================================================== -->

        <!-- Generate the simpleType elements based on IMS data-types (Derived) ******************************* -->

        <!-- ================================================================================================== -->

        <!-- Generate the simpleType elements based on IMS data-types (Union) ********************************* -->

        <!-- ================================================================================================== -->

        <!-- Generate the simpleType elements based on IMS data-types (Complex) ******************************* -->

        <xs:element name="exitResponse" type="EmptyPrimitiveType.Type" />

        <xs:element name="exitTemplate" type="EmptyPrimitiveType.Type" />

        <xs:element name="exitTest" type="EmptyPrimitiveType.Type" />

        <xs:element name="null" type="EmptyPrimitiveType.Type" />

        <!-- ================================================================================================== -->

        <!-- Generate the derived data-type elements based upon simpleType ************************************ -->

        <xs:simpleType name="ARIALevelInteger.Type">
            <xs:restriction base="xs:integer">
                <xs:minInclusive value="1" />
            </xs:restriction>
        </xs:simpleType>

        <xs:simpleType name="Coords.Type">
            <xs:restriction base="xs:normalizedString">
                <xs:pattern value="(([0-9]+%?[,]){2}([0-9]+%?))|(([0-9]+%?[,]){3}([0-9]+%?))|(([0-9]+%?[,]){2}(([0-9]+%?[,]){2})+([0-9]+%?[,])([0-9]+%?))" />
            </xs:restriction>
        </xs:simpleType>

        <xs:simpleType name="EncVariableString.Type">
            <xs:restriction base="xs:string">
                <xs:pattern value="\{[\i-[:]][\c-[:]]*\}" />
            </xs:restriction>
        </xs:simpleType>

        <xs:simpleType name="Identifier.Type">
            <xs:restriction base="xs:NCName" />
        </xs:simpleType>

        <xs:simpleType name="Length.Type">
            <xs:restriction base="xs:string">
                <xs:pattern value="[0-9]+%?" />
            </xs:restriction>
        </xs:simpleType>

        <xs:simpleType name="MimeType.Type">
            <xs:restriction base="xs:normalizedString">
                <xs:pattern value="[\p{IsBasicLatin}-[()<>@,;:\\"/\[\]?=]]+/[\p{IsBasicLatin}-[()<>@,;:\\"/\[\]?=]]+" />
            </xs:restriction>
        </xs:simpleType>

        <xs:simpleType name="NonNegativeDouble.Type">
            <xs:restriction base="xs:double">
                <xs:minInclusive value="0.0" />
            </xs:restriction>
        </xs:simpleType>

        <xs:simpleType name="UniqueIdentifier.Type">
            <xs:restriction base="xs:ID" />
        </xs:simpleType>

        <xs:simpleType name="UniqueIdentifierRef.Type">
            <xs:restriction base="xs:IDREF" />
        </xs:simpleType>

        <xs:simpleType name="VariableString.Type">
            <xs:restriction base="xs:string">
                <xs:pattern value="[\i-[:]][\c-[:]]*" />
            </xs:restriction>
        </xs:simpleType>

        <!-- ================================================================================================== -->

        <!-- Generate the derived data-type elements based upon derived simpleType **************************** -->

        <!-- ================================================================================================== -->

        <!-- Generate the ComplexTypes ************************************************************************ -->

        <xs:complexType name="A.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This provides the functionality of the HTML 'a' tag and is used to identifiy a link. If t-
                    he 'a' tag has an href attribute, then it represents a hyperlink (a hypertext anchor) lab-
                    eled by its contents. If the a element has no href attribute, then the element represents
                    a placeholder for where a link might otherwise have been placed, if it had been relevant,
                    consisting of just the element's contents.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="gap" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="href.A.Attr" />
                    <xs:attributeGroup ref="type.A.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="AnyN.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is one of the expression functions. The 'anyN' operator takes one or more sub-expres-
                    sions each with a base-type of boolean and single cardinality. The result is a single boo-
                    lean which is true if at least min of the sub-expressions are true and at most max of the
                    sub-expressions are true. If more than n - min sub-expressions are false (where n is the
                    total number of sub-expressions) or more than max sub-expressions are true then the result
                    is false. If one or more sub-expressions are NULL then it is possible that neither of the-
                    se conditions is satisfied, in which case the operator results in NULL. For example, if m-
                    in is 3 and max is 4 and the sub-expressions have values {true,true,false,NULL} then the
                    operator results in NULL whereas {true,false,false,NULL} results in false and {true,true,-
                    true,NULL} results in true. The result NULL indicates that the correct value for the oper-
                    ator cannot be determined.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="unbounded">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="min.AnyN.Attr" />
            <xs:attributeGroup ref="max.AnyN.Attr" />
        </xs:complexType>

        <xs:complexType name="AreaMapping.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A special class used to create a mapping from a source set of point values to a target set
                    of float values. When mapping containers, the result is the sum of the mapped values from
                    the target set. See mapResponsePoint for details. The attributes have the same meaning as
                    the similarly named attributes on mapping.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="areaMapEntry" minOccurs="1" maxOccurs="unbounded" />
            </xs:sequence>
            <xs:attributeGroup ref="lowerBound.AreaMapping.Attr" />
            <xs:attributeGroup ref="upperBound.AreaMapping.Attr" />
            <xs:attributeGroup ref="defaultValue.AreaMapping.Attr" />
        </xs:complexType>

        <xs:complexType name="AssessmentItem.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    An assessment item encompasses the information that is presented to a candidate and infor-
                    mation about how to score the item. Scoring takes place when candidate responses are tran-
                    sformed into outcomes by response processing rules. It is sometimes desirable to have sev-
                    eral different items that appear the same to the candidate but which are scored different-
                    ly. In this specification, these are distinct items by definition and must therefore have
                    distinct identifiers. To help facilitate the exchange of items that share significant par-
                    ts of their presentation this specification supports the inclusion of separately managed
                    item fragments (see Item and Test Fragments) in the itemBody.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="responseDeclaration" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="outcomeDeclaration" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="templateDeclaration" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="templateProcessing" minOccurs="0" maxOccurs="1" />
                <xs:element ref="assessmentStimulusRef" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="itemBody" minOccurs="0" maxOccurs="1" />
                <xs:element ref="responseProcessing" minOccurs="0" maxOccurs="1" />
                <xs:element ref="modalFeedback" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="apip:apipAccessibility" minOccurs="0" maxOccurs="1" />
            </xs:sequence>
            <xs:attributeGroup ref="identifier.AssessmentItem.Attr" />
            <xs:attributeGroup ref="title.AssessmentItem.Attr" />
            <xs:attributeGroup ref="label.AssessmentItem.Attr" />
            <xs:attributeGroup ref="language.AssessmentItem.Attr" />
            <xs:attributeGroup ref="toolName.AssessmentItem.Attr" />
            <xs:attributeGroup ref="toolVersion.AssessmentItem.Attr" />
            <xs:attributeGroup ref="adaptive.AssessmentItem.Attr" />
            <xs:attributeGroup ref="timeDependent.AssessmentItem.Attr" />
        </xs:complexType>

        <xs:complexType name="AssessmentItemRef.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Items are incorporated into the test by reference and not by direct aggregation. Note that
                    the identifier of the reference need not have any meaning outside the test. In particular
                    it is not required to be unique in the context of any catalog, or be represented in the i-
                    tem's metadata. The syntax of this identifier is more restrictive than that of the identi-
                    fier attribute of the assessmentItem itself.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="preCondition" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="branchRule" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="itemSessionControl" minOccurs="0" maxOccurs="1" />
                <xs:element ref="timeLimits" minOccurs="0" maxOccurs="1" />
                <xs:element ref="variableMapping" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="weight" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="templateDefault" minOccurs="0" maxOccurs="unbounded" />
            </xs:sequence>
            <xs:attributeGroup ref="identifier.AssessmentItemRef.Attr" />
            <xs:attributeGroup ref="required.AssessmentItemRef.Attr" />
            <xs:attributeGroup ref="fixed.AssessmentItemRef.Attr" />
            <xs:attributeGroup ref="href.AssessmentItemRef.Attr" />
            <xs:attributeGroup ref="category.AssessmentItemRef.Attr" />
        </xs:complexType>

        <xs:complexType name="AssessmentSection.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    An assessment section groups together individual item references and/or sub-sections. A s-
                    ection can be composed of any hierarchy/combination of items and sections. A section can
                    only reference an item using an assessmentItemRef object but it may contain or reference
                    other sections. The grouping of the sections/items depends upon the nature of the parent
                    section i.e. each section can be used for different grouping criteria e.g. organizational,
                    pedagogic, etc.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="preCondition" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="branchRule" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="itemSessionControl" minOccurs="0" maxOccurs="1" />
                <xs:element ref="timeLimits" minOccurs="0" maxOccurs="1" />
                <xs:element ref="selection" minOccurs="0" maxOccurs="1" />
                <xs:element ref="ordering" minOccurs="0" maxOccurs="1" />
                <xs:element ref="rubricBlock" minOccurs="0" maxOccurs="unbounded" />
                <xs:choice minOccurs="0" maxOccurs="unbounded">
                    <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="assessmentItemRef" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="assessmentSection" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="assessmentSectionRef" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="identifier.AssessmentSection.Attr" />
            <xs:attributeGroup ref="required.AssessmentSection.Attr" />
            <xs:attributeGroup ref="fixed.AssessmentSection.Attr" />
            <xs:attributeGroup ref="title.AssessmentSection.Attr" />
            <xs:attributeGroup ref="visible.AssessmentSection.Attr" />
            <xs:attributeGroup ref="keepTogether.AssessmentSection.Attr" />
        </xs:complexType>

        <xs:complexType name="AssessmentStimulus.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    An assessment stimulus object is the used to enable content to be shared by several Asses-
                    sment Items. The key feature is that this shared stimulus content must be supplied in the
                    same context for each of the Assessment Items that make use of it. The assessment stimulus
                    approach provides a mechanism to allow the stimulus content to be managed independently.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="stimulusBody" minOccurs="1" maxOccurs="1" />
                <xs:element ref="apip:apipAccessibility" minOccurs="0" maxOccurs="1" />
            </xs:sequence>
            <xs:attributeGroup ref="identifier.AssessmentStimulus.Attr" />
            <xs:attributeGroup ref="title.AssessmentStimulus.Attr" />
            <xs:attributeGroup ref="label.AssessmentStimulus.Attr" />
            <xs:attributeGroup ref="language.AssessmentStimulus.Attr" />
            <xs:attributeGroup ref="toolName.AssessmentStimulus.Attr" />
            <xs:attributeGroup ref="toolVersion.AssessmentStimulus.Attr" />
        </xs:complexType>

        <xs:complexType name="AssessmentTest.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    An assessment test is a group of assessmentItems with an associated set of rules that det-
                    ermine which of the items the candidate sees, in what order, and in what way the candidate
                    interacts with them. The rules describe the valid paths through the test, when responses
                    are submitted for response processing and when (if at all) feedback is to be given. Asses-
                    sment tests are composed of one or more test parts.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="outcomeDeclaration" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="timeLimits" minOccurs="0" maxOccurs="1" />
                <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="testPart" minOccurs="1" maxOccurs="unbounded" />
                <xs:element ref="outcomeProcessing" minOccurs="0" maxOccurs="1" />
                <xs:element ref="testFeedback" minOccurs="0" maxOccurs="unbounded" />
            </xs:sequence>
            <xs:attributeGroup ref="identifier.AssessmentTest.Attr" />
            <xs:attributeGroup ref="title.AssessmentTest.Attr" />
            <xs:attributeGroup ref="toolName.AssessmentTest.Attr" />
            <xs:attributeGroup ref="toolVersion.AssessmentTest.Attr" />
        </xs:complexType>

        <xs:complexType name="AssociableHotspot.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is used to define the hotspots that are associated with the features in the 'graphic-
                    AssociateInteraction' and 'graphicGapMatchInteraction' interactions.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBaseEmpty.Type">
                    <xs:attributeGroup ref="identifier.AssociableHotspot.Attr" />
                    <xs:attributeGroup ref="templateIdentifier.AssociableHotspot.Attr" />
                    <xs:attributeGroup ref="showHide.AssociableHotspot.Attr" />
                    <xs:attributeGroup ref="matchGroup.AssociableHotspot.Attr" />
                    <xs:attributeGroup ref="shape.AssociableHotspot.Attr" />
                    <xs:attributeGroup ref="coords.AssociableHotspot.Attr" />
                    <xs:attributeGroup ref="hotspotLabel.AssociableHotspot.Attr" />
                    <xs:attributeGroup ref="matchMax.AssociableHotspot.Attr" />
                    <xs:attributeGroup ref="matchMin.AssociableHotspot.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="AssociateInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    An Associate Interaction is a blockInteraction that presents candidates with a number of
                    choices and allows them to create associations between them. The associateInteraction must
                    be bound to a response variable with base-type pair and either single or multiple cardina-
                    lity.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BasePromptInteraction.Type">
                    <xs:sequence>
                        <xs:element ref="simpleAssociableChoice" minOccurs="1" maxOccurs="unbounded" />
                    </xs:sequence>
                    <xs:attributeGroup ref="shuffle.AssociateInteraction.Attr" />
                    <xs:attributeGroup ref="maxAssociations.AssociateInteraction.Attr" />
                    <xs:attributeGroup ref="minAssociations.AssociateInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="BasePromptInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The BasePromptInteraction is the base class for the QTI interactions that support a Promp-
                    t. This also consists of a set of children characteristics.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="prompt" minOccurs="0" maxOccurs="1" />
            </xs:sequence>
            <xs:attributeGroup ref="id.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="class.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="language.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="label.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="base.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="responseIdentifier.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="dir.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="role.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="aria-controls.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="aria-describedby.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="aria-flowsto.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="aria-label.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="aria-labelledby.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="aria-level.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="aria-live.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="aria-orientation.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="aria-owns.BasePromptInteraction.Attr" />
            <xs:attributeGroup ref="dataExtension.BasePromptInteraction.Attr" />
        </xs:complexType>

        <xs:complexType name="BaseSequence.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The BaseSequence class provides the base characteristics for some of the HTML tag and QTI
                    interactions.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
            </xs:sequence>
            <xs:attributeGroup ref="id.BaseSequence.Attr" />
            <xs:attributeGroup ref="class.BaseSequence.Attr" />
            <xs:attributeGroup ref="language.BaseSequence.Attr" />
            <xs:attributeGroup ref="label.BaseSequence.Attr" />
            <xs:attributeGroup ref="dir.BaseSequence.Attr" />
            <xs:attributeGroup ref="role.BaseSequence.Attr" />
            <xs:attributeGroup ref="aria-controls.BaseSequence.Attr" />
            <xs:attributeGroup ref="aria-describedby.BaseSequence.Attr" />
            <xs:attributeGroup ref="aria-flowto.BaseSequence.Attr" />
            <xs:attributeGroup ref="aria-label.BaseSequence.Attr" />
            <xs:attributeGroup ref="aria-labelledby.BaseSequence.Attr" />
            <xs:attributeGroup ref="aria-level.BaseSequence.Attr" />
            <xs:attributeGroup ref="aria-live.BaseSequence.Attr" />
            <xs:attributeGroup ref="aria-orientation.BaseSequence.Attr" />
            <xs:attributeGroup ref="aria-owns.BaseSequence.Attr" />
            <xs:attributeGroup ref="dataExtension.BaseSequence.Attr" />
        </xs:complexType>

        <xs:complexType name="BaseSequenceFull.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The BaseSequenceFull class provides the base characteristics for some of the QTI interact-
                    ions that support the full set of base characteristics.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
            </xs:sequence>
            <xs:attributeGroup ref="id.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="class.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="language.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="label.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="responseIdentifier.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="base.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="dir.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="role.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="aria-controls.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="aria-describedby.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="aria-flowto.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="aria-label.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="aria-labelledby.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="aria-level.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="aria-live.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="aria-orientation.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="aria-owns.BaseSequenceFull.Attr" />
            <xs:attributeGroup ref="dataExtension.BaseSequenceFull.Attr" />
        </xs:complexType>

        <xs:complexType name="BaseSequenceRIdent.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The BaseSequenceRIdent class provides the base characteristics (as per the BaseSequence p-
                    lus 'rident') for some of the QTI interactions.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
            </xs:sequence>
            <xs:attributeGroup ref="id.BaseSequenceRIdent.Attr" />
            <xs:attributeGroup ref="class.BaseSequenceRIdent.Attr" />
            <xs:attributeGroup ref="language.BaseSequenceRIdent.Attr" />
            <xs:attributeGroup ref="label.BaseSequenceRIdent.Attr" />
            <xs:attributeGroup ref="responseIdentifier.BaseSequenceRIdent.Attr" />
            <xs:attributeGroup ref="dir.BaseSequenceRIdent.Attr" />
            <xs:attributeGroup ref="role.BaseSequenceRIdent.Attr" />
            <xs:attributeGroup ref="aria-controls.BaseSequenceRIdent.Attr" />
            <xs:attributeGroup ref="aria-describedby.BaseSequenceRIdent.Attr" />
            <xs:attributeGroup ref="aria-flowto.BaseSequenceRIdent.Attr" />
            <xs:attributeGroup ref="aria-label.BaseSequenceRIdent.Attr" />
            <xs:attributeGroup ref="aria-labelledby.BaseSequenceRIdent.Attr" />
            <xs:attributeGroup ref="aria-level.BaseSequenceRIdent.Attr" />
            <xs:attributeGroup ref="aria-live.BaseSequenceRIdent.Attr" />
            <xs:attributeGroup ref="aria-orientation.BaseSequenceRIdent.Attr" />
            <xs:attributeGroup ref="aria-owns.BaseSequenceRIdent.Attr" />
            <xs:attributeGroup ref="dataExtension.BaseSequenceRIdent.Attr" />
        </xs:complexType>

        <xs:complexType name="BaseSequenceXBase.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The BaseSequenceXBase class provides the base characteristics (as per the BaseSequence pl-
                    us 'base') for some of the HTML tags and QTI interactions.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
            </xs:sequence>
            <xs:attributeGroup ref="id.BaseSequenceXBase.Attr" />
            <xs:attributeGroup ref="class.BaseSequenceXBase.Attr" />
            <xs:attributeGroup ref="language.BaseSequenceXBase.Attr" />
            <xs:attributeGroup ref="label.BaseSequenceXBase.Attr" />
            <xs:attributeGroup ref="base.BaseSequenceXBase.Attr" />
            <xs:attributeGroup ref="dir.BaseSequenceXBase.Attr" />
            <xs:attributeGroup ref="role.BaseSequenceXBase.Attr" />
            <xs:attributeGroup ref="aria-controls.BaseSequenceXBase.Attr" />
            <xs:attributeGroup ref="aria-describedby.BaseSequenceXBase.Attr" />
            <xs:attributeGroup ref="aria-flowto.BaseSequenceXBase.Attr" />
            <xs:attributeGroup ref="aria-label.BaseSequenceXBase.Attr" />
            <xs:attributeGroup ref="aria-labelledby.BaseSequenceXBase.Attr" />
            <xs:attributeGroup ref="aria-level.BaseSequenceXBase.Attr" />
            <xs:attributeGroup ref="aria-live.BaseSequenceXBase.Attr" />
            <xs:attributeGroup ref="aria-orientation.BaseSequenceXBase.Attr" />
            <xs:attributeGroup ref="aria-owns.BaseSequenceXBase.Attr" />
            <xs:attributeGroup ref="dataExtension.BaseSequenceXBase.Attr" />
        </xs:complexType>

        <xs:complexType name="BDO.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This enables the HTML 'bdo' tag. The 'bdo' tag represents explicit text directionality fo-
                    rmatting control for its children. It allows authors to override the Unicode bidirectional
                    algorithm by explicitly specifying a direction override. Authors must specify the dir att-
                    ribute on this tag, with the value ltr to specify a left-to-right override and with the v-
                    alue rtl to specify a right-to-left override. The auto value must not be specified.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequence.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="title.BDO.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="BlockQuote.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This defines the content of the 'blockquote' HTML tag. The 'blockquote' tag represents co-
                    ntent that is quoted from another source, optionally with a citation which must be within
                    a footer or cite element, and optionally with in-line changes such as annotations and abb-
                    reviations. Content inside a blockquote other than citations and in-line changes must be
                    quoted from another source, whose address, if it has one, may be cited in the cite attrib-
                    ute. The content of a blockquote may be abbreviated, may have context added or may have a-
                    nnotations. Any such additions or changes to quoted text must be indicated in the text (at
                    the text level). This may mean the use of notational conventions or explicit remarks, such
                    as "emphasis mine".
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="positionObjectStage" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="drawingInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="gapMatchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="matchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicGapMatchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hotspotInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicOrderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="selectPointInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicAssociateInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sliderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="choiceInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="mediaInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hottextInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="orderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="extendedTextInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="uploadInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="associateInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="infoControl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="cite.BlockQuote.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="BR.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This provides the functionality of the HTML 'br' tag. The 'br' tag represents a line brea-
                    k.This tag has no children.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBaseEmpty.Type" />
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="BranchRule.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A branch-rule is a simple expression attached to an assessmentItemRef, assessmentSection
                    or testPart that is evaluated after the item, section or part has been presented to the c-
                    andidate. If the expression evaluates to 'true' the test jumps forward to the item, secti-
                    on or part referred to by the target identifier. In the case of an item or section, the t-
                    arget must refer to an item or section in the same testPart that has not yet been present-
                    ed. For testParts, the target must refer to another testPart.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="target.BranchRule.Attr" />
        </xs:complexType>

        <xs:complexType name="Caption.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Provides the HTML 'caption' tag functionality. The 'caption' tag represents the title of
                    the table that is its parent, if it has a parent and that is a 'table' tag. The caption t-
                    ag takes part in the table model. When a table tag is the only content in a figure tag ot-
                    her than the figcaption, the caption tag should be omitted in favor of the figcaption. A
                    caption can introduce context for a table, making it significantly easier to understand.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequence.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="gap" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="ChoiceInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The choice interaction presents a set of choices to the candidate. The candidate's task is
                    to select one or more of the choices, up to a maximum of maxChoices. The interaction is a-
                    lways initialized with no choices selected. The choiceInteraction must be bound to a resp-
                    onse variable with a baseType of identifier and single or multiple cardinality.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BasePromptInteraction.Type">
                    <xs:sequence>
                        <xs:element ref="simpleChoice" minOccurs="1" maxOccurs="unbounded" />
                    </xs:sequence>
                    <xs:attributeGroup ref="shuffle.ChoiceInteraction.Attr" />
                    <xs:attributeGroup ref="maxChoices.ChoiceInteraction.Attr" />
                    <xs:attributeGroup ref="minChoices.ChoiceInteraction.Attr" />
                    <xs:attributeGroup ref="orientation.ChoiceInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="Col.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Provides the functionality of the HTML 'col' tag. If a 'col' tag has a parent and that is
                    a colgroup tag that itself has a parent that is a table tag, then the col tag represents
                    one or more columns in the column group represented by that colgroup. The tag may have a
                    span content attribute specified, whose value must be a valid non-negative integer greater
                    than zero. The col tag and its span attribute take part in the table model.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBaseEmpty.Type">
                    <xs:attributeGroup ref="span.Col.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="ColGroup.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Provides the functionality of the HTML 'colgroup' tag. The colgroup element represents a
                    group of one or more columns in the table that is its parent, if it has a parent and that
                    is a table element. If the colgroup element contains no col elements, then the element may
                    have a span content attribute specified, whose value must be a valid non-negative integer
                    greater than zero. The colgroup element and its span attribute take part in the table mod-
                    el.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequence.Type">
                    <xs:sequence>
                        <xs:element ref="col" minOccurs="0" maxOccurs="unbounded" />
                    </xs:sequence>
                    <xs:attributeGroup ref="span.ColGroup.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="CorrectResponse.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This class is used to define, as part of the response declaration, the values(s) for the
                    correct response.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="value" minOccurs="1" maxOccurs="unbounded" />
            </xs:sequence>
            <xs:attributeGroup ref="interpretation.CorrectResponse.Attr" />
        </xs:complexType>

        <xs:complexType name="CustomInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The custom interaction provides an opportunity for extensibility of this specification to
                    include support for interactions not currently documented. The Portable Custom Interaction
                    specification should be used in conjunction with this class [PCI, 14].
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceFull.Type">
                    <xs:sequence>
                        <xs:group ref="grpAnyLax.any" />
                    </xs:sequence>
                    <xs:attributeGroup ref="extension.CustomInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="CustomOperator.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The custom operator provides an extension mechanism for defining operations not currently
                    supported by this specification. It has been suggested that customOperator might be used
                    to help link processing rules defined by this specification to instances of web-service b-
                    ased processing engines. For example, a web-service which offered automated marking of fr-
                    ee text responses. Implementors experimenting with this approach are encouraged to share
                    information about their solutions to help determine the best way to achieve this type of
                    processing.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="0" maxOccurs="unbounded">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
                <xs:group ref="grpLax.any" />
            </xs:sequence>
            <xs:attributeGroup ref="class.CustomOperator.Attr" />
            <xs:attributeGroup ref="definition.CustomOperator.Attr" />
            <xs:attributeGroup ref="extension.CustomOperator.Attr" />
        </xs:complexType>

        <xs:complexType name="DD.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The 'dd' tag is a part of the HTML content. The 'dd' tag represents the description, defi-
                    nition, or value, part of a term-description group in a description list ('dl' tag).
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="drawingInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="gapMatchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="matchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicGapMatchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hotspotInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicOrderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="selectPointInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicAssociateInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sliderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="choiceInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="mediaInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hottextInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="orderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="extendedTextInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="uploadInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="associateInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="DefaultValue.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Defines the default value of the associated response, outcome and template variable.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="value" minOccurs="1" maxOccurs="unbounded" />
            </xs:sequence>
            <xs:attributeGroup ref="interpretation.DefaultValue.Attr" />
        </xs:complexType>

        <xs:complexType name="Div.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This provides the functionality of the HTML 'div' tag. The div tag has no special meaning
                    at all. It represents its children. It can be used with the class, lang, and title charac-
                    teristics to mark up semantics common to a group of consecutive elements. Authors are str-
                    ongly encouraged to view the div tag as an element of last resort, for when no other elem-
                    ent is suitable. Use of more appropriate elements instead of the div element leads to bet-
                    ter accessibility for readers and easier maintainability for authors.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="positionObjectStage" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="drawingInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="gapMatchInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="matchInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="graphicGapMatchInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hotspotInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="graphicOrderInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="selectPointInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="graphicAssociateInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sliderInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="choiceInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="mediaInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hottextInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="orderInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="extendedTextInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="uploadInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="associateInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                    <xs:choice minOccurs="1" maxOccurs="1">
                                        <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                        <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                        <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                        <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                        <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                        <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                        <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                        <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                        <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                        <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                        <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                        <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                    </xs:choice>
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="DL.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Denotes the 'dl' HTML tag. The 'dl' tag represents an association list consisting of zero
                    or more name-value groups (a description list). A name-value group consists of one or more
                    names ('dt' tags) followed by one or more values ('dd' tags), ignoring any nodes other th-
                    an 'dt' and 'dd' tags. Within a single 'dl' tag, there should not be more than one 'dt' t-
                    ag for each name.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="dd" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dt" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="DrawingInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The drawing interaction allows the candidate to use a common set of drawing tools to modi-
                    fy a given graphical image (the canvas). It must be bound to a response variable with bas-
                    e-type file and single cardinality. The result is a file in the same format as the origin-
                    al image.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BasePromptInteraction.Type">
                    <xs:sequence>
                        <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="DT.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The 'dt' tag is a part of the HTML content. The 'dt' tag represents the term, or name, pa-
                    rt of a term-description group in a description list (dl element).
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="gap" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="EndAttemptInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The end attempt interaction is a special type of interaction which allows item authors to
                    provide the candidate with control over the way in which the candidate terminates an atte-
                    mpt. The candidate can use the interaction to terminate the attempt (triggering response
                    processing) immediately, typically to request a hint. It must be bound to a response vari-
                    able with base-type boolean and single cardinality. If the candidate invokes response pro-
                    cessing using an endAttemptInteraction then the associated response variable is set to 't-
                    rue'. If response processing is invoked in any other way, either through a different endA-
                    ttemptInteraction or through the default method for the delivery engine, then the associa-
                    ted response variable is set to 'false'. The default value of the response variable is al-
                    ways ignored.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBaseEmpty.Type">
                    <xs:attributeGroup ref="responseIdentifier.EndAttemptInteraction.Attr" />
                    <xs:attributeGroup ref="title.EndAttemptInteraction.Attr" />
                    <xs:attributeGroup ref="countAttempt.EndAttemptInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="Equal.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The equal operator takes two sub-expressions which must both have single cardinality and
                    have a numerical base-type. The result is a single boolean with a value of 'true' if the
                    two expressions are numerically equal and 'false' if they are not. If either sub-expressi-
                    on is NULL then the operator results in NULL.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="2" maxOccurs="2">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="toleranceMode.Equal.Attr" />
            <xs:attributeGroup ref="tolerance.Equal.Attr" />
            <xs:attributeGroup ref="includeLowerBound.Equal.Attr" />
            <xs:attributeGroup ref="includeUpperBound.Equal.Attr" />
        </xs:complexType>

        <xs:complexType name="EqualRounded.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The equalRounded operator takes two sub-expressions which must both have single cardinali-
                    ty and have a numerical base-type. The result is a single boolean with a value of 'true'
                    if the two expressions are numerically equal after rounding and 'false' if they are not.
                    If either sub-expression is NULL then the operator results in NULL.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="2" maxOccurs="2">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="roundingMode.EqualRounded.Attr" />
            <xs:attributeGroup ref="figures.EqualRounded.Attr" />
        </xs:complexType>

        <xs:complexType name="ExtendedTextInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    An Extended Text Interaction is a blockInteraction that allows the candidate to enter an
                    extended amount of text. The extendedTextInteraction must be bound to a response variable
                    of single, multiple, ordered or record cardinality. If the response variable has record c-
                    ardinality the fields in the record must be 'stringValue', 'floatValue', etc. Otherwise it
                    ust have a baseType of string, integer or float. When bound to response variable with sin-
                    gle cardinality a single string of text is required from the candidate. When bound to a r-
                    esponse variable with multiple or ordered cardinality several separate text strings may be
                    required.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BasePromptInteraction.Type">
                    <xs:attributeGroup ref="base.ExtendedTextInteraction.Attr" />
                    <xs:attributeGroup ref="stringIdentifier.ExtendedTextInteraction.Attr" />
                    <xs:attributeGroup ref="expectedLength.ExtendedTextInteraction.Attr" />
                    <xs:attributeGroup ref="patternMask.ExtendedTextInteraction.Attr" />
                    <xs:attributeGroup ref="placeholderText.ExtendedTextInteraction.Attr" />
                    <xs:attributeGroup ref="maxStrings.ExtendedTextInteraction.Attr" />
                    <xs:attributeGroup ref="minStrings.ExtendedTextInteraction.Attr" />
                    <xs:attributeGroup ref="expectedLines.ExtendedTextInteraction.Attr" />
                    <xs:attributeGroup ref="format.ExtendedTextInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="FeedbackBlock.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This class is used to defne the feedback content that can be presented to the learner. A
                    feedback element that forms part of a Non-adaptive Item must not contain an interaction o-
                    bject, either directly or indirectly. When an interaction is contained in a hidden feedba-
                    ck element it must also be hidden. The candidate must not be able to set or update the va-
                    lue of the associated response variables. Feedback elements can be embedded inside each o-
                    ther, with one exception: feedBackInline cannot contain feedbackBlock elements.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="positionObjectStage" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="drawingInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="gapMatchInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="matchInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="graphicGapMatchInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hotspotInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="graphicOrderInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="selectPointInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="graphicAssociateInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sliderInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="choiceInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="mediaInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hottextInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="orderInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="extendedTextInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="uploadInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="associateInteraction" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="infoControl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                        <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
                        <xs:element ref="apip:apipAccessibility" minOccurs="0" maxOccurs="1" />
                    </xs:sequence>
                    <xs:attributeGroup ref="outcomeIdentifier.FeedbackBlock.Attr" />
                    <xs:attributeGroup ref="identifier.FeedbackBlock.Attr" />
                    <xs:attributeGroup ref="showHide.FeedbackBlock.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="FeedbackInline.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is feedback that is presented as inline content. Inline feedback that forms part of a
                    Non-adaptive Item must not contain an interaction object, either directly or indirectly.
                    When an interaction is contained in a hidden feedback it must also be hidden. The candida-
                    te must not be able to set or update the value of the associated response variables. Feed-
                    back can be embedded inside each other, with one exception: feedBackInline cannot contain
                    feedbackBlock elements.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="outcomeIdentifier.FeedbackInline.Attr" />
                    <xs:attributeGroup ref="identifier.FeedbackInline.Attr" />
                    <xs:attributeGroup ref="showHide.FeedbackInline.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="FieldValue.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is a QTI expression. The field-value operator takes a sub-expression with a record c-
                    ontainer value. The result is the value of the field with the specified fieldIdentifier.
                    If there is no field with that identifier then the result of the operator is NULL.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="fieldIdentifier.FieldValue.Attr" />
        </xs:complexType>

        <xs:complexType name="Gap.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This defines the gap structure that must only appear within a 'gapMatchInteraction'.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBaseEmpty.Type">
                    <xs:attributeGroup ref="identifier.Gap.Attr" />
                    <xs:attributeGroup ref="templateIdentifier.Gap.Attr" />
                    <xs:attributeGroup ref="showHide.Gap.Attr" />
                    <xs:attributeGroup ref="matchGroup.Gap.Attr" />
                    <xs:attributeGroup ref="required.Gap.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="GapImg.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A gap image contains a single image object to be inserted into a gap by the candidate.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequence.Type">
                    <xs:sequence>
                        <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                    </xs:sequence>
                    <xs:attributeGroup ref="identifier.GapImg.Attr" />
                    <xs:attributeGroup ref="templateIdentifier.GapImg.Attr" />
                    <xs:attributeGroup ref="showHide.GapImg.Attr" />
                    <xs:attributeGroup ref="matchGroup.GapImg.Attr" />
                    <xs:attributeGroup ref="matchMax.GapImg.Attr" />
                    <xs:attributeGroup ref="matchMin.GapImg.Attr" />
                    <xs:attributeGroup ref="objectLabel.GapImg.Attr" />
                    <xs:attributeGroup ref="top.GapImg.Attr" />
                    <xs:attributeGroup ref="left.GapImg.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="GapMatchInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A gap match interaction is a blockInteraction that contains a number gaps that the candid-
                    ate can fill from an associated set of choices. The candidate must be able to review the
                    content with the gaps filled in context, as indicated by their choices. The gapMatchInter-
                    action must be bound to a response variable with base-type directedPair and either single
                    or multiple cardinality, depending on the number of gaps. The choices represent the source
                    of the pairing and gaps the targets. Each gap can have at most one choice associated with
                    it. The maximum occurrence of the choices is controlled by the matchMax characteristic of
                    gapChoice.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BasePromptInteraction.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="1" maxOccurs="unbounded">
                            <xs:element ref="gapText" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="gapImg" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                        <xs:choice minOccurs="1" maxOccurs="unbounded">
                            <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="shuffle.GapMatchInteraction.Attr" />
                    <xs:attributeGroup ref="minAssociations.GapMatchInteraction.Attr" />
                    <xs:attributeGroup ref="maxAssociations.GapMatchInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="GapText.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A simple run of text to be inserted into a gap by the user, may be subject to variable va-
                    lue substitution with printedVariable.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequence.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="identifier.GapText.Attr" />
                    <xs:attributeGroup ref="templateIdentifier.GapText.Attr" />
                    <xs:attributeGroup ref="showHide.GapText.Attr" />
                    <xs:attributeGroup ref="matchGroup.GapText.Attr" />
                    <xs:attributeGroup ref="matchMax.GapText.Attr" />
                    <xs:attributeGroup ref="matchMin.GapText.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="GraphicAssociateInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A graphic associate interaction is a graphic interaction with a corresponding set of choi-
                    ces that are defined as areas of the graphic image. The candidate's task is to associate
                    the areas (hotspots) with each other. The graphic associate interaction should only be us-
                    ed when the graphical relationship of the choices with respect to each other (as represen-
                    ted by the graphic image) is important to the needs of the item. Otherwise, associateInte-
                    raction should be used instead with separate Material for each option. The delivery engine
                    must clearly indicate all defined area(s) of the image. The graphicAssociateInteraction m-
                    ust be bound to a response variable with base-type pair and either single or multiple car-
                    dinality.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BasePromptInteraction.Type">
                    <xs:sequence>
                        <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="associableHotspot" minOccurs="1" maxOccurs="unbounded" />
                    </xs:sequence>
                    <xs:attributeGroup ref="minAssociations.GraphicAssociateInteraction.Attr" />
                    <xs:attributeGroup ref="maxAssociations.GraphicAssociateInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="GraphicGapMatchInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A graphic gap-match interaction is a graphical interaction with a set of gaps that are de-
                    fined as areas (hotspots) of the graphic image and an additional set of gap choices that
                    are defined outside the image. The candidate must associate the gap choices with the gaps
                    in the image and be able to review the image with the gaps filled in context, as indicated
                    by their choices. Care should be taken when designing these interactions to ensure that t-
                    he gaps in the image are a suitable size to receive the required gap choices. It must be
                    clear to the candidate which hotspot each choice has been associated with. When associate-
                    d, choices must appear wholly inside the gaps if at all possible and, where overlaps are
                    required, should not hide each other completely. If the candidate indicates the associati-
                    on by positioning the choice over the gap (e.g. drag and drop) the system should 'snap' it
                    to the nearest position that satisfies these requirements. The graphicGapMatchInteraction
                    must be bound to a response variable with base-type directedPair and multiple cardinality.
                    The choices represent the source of the pairing and the gaps in the image (the hotspots)
                    the targets. Unlike the simple gapMatchInteraction, each gap can have several choices ass-
                    ociated with it if desired, furthermore, the same choice may be associated with an associ-
                    ableHotspot multiple times, in which case the corresponding directed pair appears multiple
                    times in the value of the response variable.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceFull.Type">
                    <xs:sequence>
                        <xs:element ref="prompt" minOccurs="0" maxOccurs="1" />
                        <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="unbounded">
                            <xs:element ref="gapText" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="gapImg" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                        <xs:element ref="associableHotspot" minOccurs="1" maxOccurs="unbounded" />
                    </xs:sequence>
                    <xs:attributeGroup ref="minAssociations.GraphicGapMatchInteraction.Attr" />
                    <xs:attributeGroup ref="maxAssociations.GraphicGapMatchInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="GraphicOrderInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A graphic order interaction is a graphic interaction with a corresponding set of choices
                    that are defined as areas of the graphic image. The candidate's task is to impose an orde-
                    ring on the areas (hotspots). The order hotspot interaction should only be used when the
                    spacial relationship of the choices with respect to each other (as represented by the gra-
                    phic image) is important to the needs of the item. Otherwise, orderInteraction should be
                    used instead with separate material for each option. The delivery engine must clearly ind-
                    icate all defined area(s) of the image. The order hotspot interaction must be bound to a
                    response variable with a baseType of identifier and ordered cardinality.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceFull.Type">
                    <xs:sequence>
                        <xs:element ref="prompt" minOccurs="0" maxOccurs="1" />
                        <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hotspotChoice" minOccurs="1" maxOccurs="unbounded" />
                    </xs:sequence>
                    <xs:attributeGroup ref="minChoices.GraphicOrderInteraction.Attr" />
                    <xs:attributeGroup ref="maxChoices.GraphicOrderInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="HotspotChoice.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The definition of a hotspot choices that can be selected by the candidate. If the delivery
                    system does not support pointer-based selection then the order in which the choices are g-
                    iven must be the order in which they are offered to the candidate for selection. For exam-
                    ple, the 'tab order' in simple keyboard navigation. If hotspots overlap then those listed
                    first hide overlapping hotspots that appear later. The default hotspot, if defined, must
                    appear last.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBaseEmpty.Type">
                    <xs:attributeGroup ref="identifier.HotspotChoice.Attr" />
                    <xs:attributeGroup ref="templateIdentifier.HotspotChoice.Attr" />
                    <xs:attributeGroup ref="showHide.HotspotChoice.Attr" />
                    <xs:attributeGroup ref="shape.HotspotChoice.Attr" />
                    <xs:attributeGroup ref="coords.HotspotChoice.Attr" />
                    <xs:attributeGroup ref="hotspotLabel.HotspotChoice.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="HotspotInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A hotspot interaction is a graphical interaction with a corresponding set of choices that
                    are defined as areas of the graphic image. The candidate's task is to select one or more
                    of the areas (hotspots). The hotspot interaction should only be used when the spacial rel-
                    ationship of the choices with respect to each other (as represented by the graphic image)
                    is important to the needs of the item. Otherwise, choiceInteraction should be used instead
                    with separate material for each option. The delivery engine must clearly indicate the sel-
                    ected area(s) of the image and may also indicate the unselected areas as well. Interactio-
                    ns with hidden hotspots are achieved with the selectPointInteraction. The hotspot interac-
                    tion must be bound to a response variable with a baseType of identifier and single or mul-
                    tiple cardinality.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BasePromptInteraction.Type">
                    <xs:sequence>
                        <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hotspotChoice" minOccurs="1" maxOccurs="unbounded" />
                    </xs:sequence>
                    <xs:attributeGroup ref="minChoices.HotspotInteraction.Attr" />
                    <xs:attributeGroup ref="maxChoices.HotspotInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="HotText.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A HotText area is used within the content of an hotTextInteraction to provide the individ-
                    ual choices. It must not contain any nested interactions or other hottext areas. When a h-
                    ottext choice is hidden (by the value of an associated template variable) the content of
                    the choice must still be presented to the candidate as if it were simply part of the surr-
                    ounding material. In the case of hottext, the effect of hiding the choice is simply to ma-
                    ke the run of text unselectable by the candidate.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="identifier.HotText.Attr" />
                    <xs:attributeGroup ref="templateIdentifier.HotText.Attr" />
                    <xs:attributeGroup ref="showHide.HotText.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="HotTextInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The HotText Interaction presents a set of choices to the candidate represented as selecta-
                    ble runs of text embedded within a surrounding context, such as a simple passage of text.
                    Like choiceInteraction, the candidate's task is to select one or more of the choices, up
                    to a maximum of maxChoices. The interaction is initialized from the defaultValue of the a-
                    ssociated response variable, a NULL value indicating that no choices are selected (the us-
                    ual case). The hottextInteraction must be bound to a response variable with a baseType of
                    identifier and single or multiple cardinality.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BasePromptInteraction.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="1" maxOccurs="unbounded">
                            <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="maxChoices.HotTextInteraction.Attr" />
                    <xs:attributeGroup ref="minChoices.HotTextInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="HR.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This provides the functionality of the HTML 'hr' tag. The 'hr' tag represents a paragraph-
                    -level thematic break, e.g. a scene change in a story, or a transition to another topic w-
                    ithin a section of a reference book. This tag has no children.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBaseEmpty.Type" />
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="HTMLText.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This provides the content for text-based HTML tags e.g. 'pre', 'p', 'h1', 'h2', etc.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="gap" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="Img.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This provides the HTML 'img' tag content capability.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBaseEmpty.Type">
                    <xs:attributeGroup ref="src.Img.Attr" />
                    <xs:attributeGroup ref="alt.Img.Attr" />
                    <xs:attributeGroup ref="longdesc.Img.Attr" />
                    <xs:attributeGroup ref="height.Img.Attr" />
                    <xs:attributeGroup ref="width.Img.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="Index.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The index operator takes a sub-expression with an ordered container value and any base-ty-
                    pe. The result is the nth value of the container. The result has the same base-type as the
                    sub-expression but single cardinality. The first value of a container has index 1, the se-
                    cond 2 and so on. 'n' must be a positive integer. If 'n' exceeds the number of values in
                    the container (or the sub-expression is NULL) then the result of the index operator is NU-
                    LL. If 'n' is an identifier, it is the value of 'n' at runtime that is used.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="n.Index.Attr" />
        </xs:complexType>

        <xs:complexType name="InfoControl.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The infoControl element is a means to provide the candidate with extra information about
                    the item when s/he chooses to trigger the control. The extra information can be a hint, b-
                    ut could also be additional tools such as a ruler or a (JavaScript) calculator. Unlike en-
                    dAttemptInteraction, triggering infoControl has no consequence for response processing. T-
                    hat means that its triggering won't be recorded, nor the candidate penalised for triggeri-
                    ng it.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequence.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="title.InfoControl.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="InlineChoice.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A simple run of text to be displayed to the user, may be subject to variable value substi-
                    tution with printedVariable.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequence.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="identifier.InlineChoice.Attr" />
                    <xs:attributeGroup ref="fixed.InlineChoice.Attr" />
                    <xs:attributeGroup ref="templateIdentifier.InlineChoice.Attr" />
                    <xs:attributeGroup ref="showHide.InlineChoice.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="InlineChoiceInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    An inline choice is an inlineInteraction that presents the user with a set of choices, ea-
                    ch of which is a simple piece of text. The candidate's task is to select one of the choic-
                    es. Unlike the choiceInteraction, the delivery engine must allow the candidate to review
                    their choice within the context of the surrounding text. The inlineChoiceInteraction must
                    be bound to a response variable with a baseType of identifier and single cardinality only.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceFull.Type">
                    <xs:sequence>
                        <xs:element ref="label" minOccurs="0" maxOccurs="1" />
                        <xs:element ref="inlineChoice" minOccurs="1" maxOccurs="unbounded" />
                    </xs:sequence>
                    <xs:attributeGroup ref="shuffle.InlineChoiceInteraction.Attr" />
                    <xs:attributeGroup ref="required.InlineChoiceInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="Inside.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The inside operator takes a single sub-expression which must have a baseType of point. The
                    result is a single boolean with a value of 'true' if the given point is inside the area d-
                    efined by shape and coords. If the sub-expression is a container the result is 'true' if
                    any of the points are inside the area. If either sub-expression is NULL then the operator
                    results in NULL.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="shape.Inside.Attr" />
            <xs:attributeGroup ref="coords.Inside.Attr" />
        </xs:complexType>

        <xs:complexType name="InterpolationTable.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    An interpolationTable transforms a source float (or integer) by finding the first interpo-
                    lationTableEntry with a sourceValue that is less than or equal to (subject to includeBoun-
                    dary) the source value. For example, an interpolation table can be used to map a raw nume-
                    ric score onto an identifier representing a grade. It may also be used to implement numer-
                    ic transformations such as those from a simple raw score to a value on a calibrated scale.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="interpolationTableEntry" minOccurs="1" maxOccurs="unbounded" />
            </xs:sequence>
            <xs:attributeGroup ref="defaultValue.InterpolationTable.Attr" />
        </xs:complexType>

        <xs:complexType name="ItemBody.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The item body contains the text, graphics, media objects and interactions that describe t-
                    he item's content and information about how it is structured. The body is presented by co-
                    mbining it with stylesheet information, either explicitly or implicitly using the default
                    style rules of the delivery or authoring system.
    The body must be presented to the candid-
                    ate when the associated item session is in the interacting state. In this state, the cand-
                    idate must be able to interact with each of the visible interactions and therefore set or
                    update the values of the associated response variables. The body may be presented to the
                    candidate when the item session is in the closed or review state. In these states, althou-
                    gh the candidate's responses should be visible, the interactions must be disabled so as to
                    prevent the candidate from setting or updating the values of the associated response vari-
                    ables. Finally, the body may be presented to the candidate in the solution state, in which
                    case the correct values of the response variables must be visible and the associated inte-
                    ractions disabled.
    The content model employed by this specification uses many concepts ta-
                    ken directly from [XHTML, 10]. In effect, this part of the specification defines a profile
                    of XHTML. Only some of the elements defined in XHTML are allowable in an assessmentItem a-
                    nd of those that are, some have additional constraints placed on their attributes. Only t-
                    hose elements from XHTML that are explicitly defined within this specification can be use-
                    d. See XHTML Elements for details. Finally, this specification defines some new elements
                    which are used to represent the interactions and to control the display of Integrated Fee-
                    dback and content restricted to one or more of the defined content views.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="unbounded">
                    <xs:element ref="rubricBlock" minOccurs="1" maxOccurs="1" />
                    <xs:choice minOccurs="1" maxOccurs="1">
                        <xs:element ref="positionObjectStage" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="drawingInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="gapMatchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="matchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicGapMatchInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hotspotInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicOrderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="selectPointInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="graphicAssociateInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="sliderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="choiceInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="mediaInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hottextInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="orderInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="extendedTextInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="uploadInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="associateInteraction" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="infoControl" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                    </xs:choice>
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="id.ItemBody.Attr" />
            <xs:attributeGroup ref="class.ItemBody.Attr" />
            <xs:attributeGroup ref="language.ItemBody.Attr" />
            <xs:attributeGroup ref="label.ItemBody.Attr" />
            <xs:attributeGroup ref="dir.ItemBody.Attr" />
        </xs:complexType>

        <xs:complexType name="Label.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This allows the creation of human readable labels that will be placed close to the associ-
                    ated displayed content artefacts. These labels are used with inline choice interactions.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="LI.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Provides the HTML 'li' tag functionality. The 'li' tag represents a list item. If its par-
                    ent tag is an 'ol' or 'ul', then the tag is an item of the parent tag's list, as defined
                    for those elements. Otherwise, the list item has no defined list-related relationship to
                    any other 'li' tag. If the parent element is an 'ol' tag, then the 'li' tag has an ordinal
                    value.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequence.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="drawingInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="gapMatchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="matchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicGapMatchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hotspotInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicOrderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="selectPointInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicAssociateInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sliderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="choiceInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="mediaInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hottextInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="orderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="extendedTextInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="uploadInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="associateInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="Logic0toMany.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is the container for the combination of the zero or more child expressions (see the
                    ExpressionGroup abstract class for the details on the permitted expressions).
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="0" maxOccurs="unbounded">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="Logic1toMany.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is the container for the combination of the one or more child expressions (see the E-
                    xpressionGroup abstract class for the details on the permitted expressions).
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="unbounded">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="LogicPair.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is the container for the combination of the two child expressions (see the Expressio-
                    nGroup abstract class for the details on the permitted expressions).
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="2" maxOccurs="2">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="LogicSingle.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is the container for the combination of the single child expression (see the Express-
                    ionGroup abstract class for the details on the permitted expressions).
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="LookupOutcomeValue.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The lookupOutcomeValue rule sets the value of an outcome variable to the value obtained by
                    looking up the value of the associated expression in the lookupTable associated with the
                    outcome's declaration.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="identifier.LookupOutcomeValue.Attr" />
        </xs:complexType>

        <xs:complexType name="Mapping.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A special class used to create a mapping from a source set of any baseType (except file a-
                    nd duration) to a single float. Note that mappings from values of base type float should
                    be avoided due to the difficulty of matching floating point values, see the match operator
                    for more details. When mapping containers the result is the sum of the mapped values from
                    the target set. See the MapResponse class for details.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="mapEntry" minOccurs="1" maxOccurs="unbounded" />
            </xs:sequence>
            <xs:attributeGroup ref="lowerBound.Mapping.Attr" />
            <xs:attributeGroup ref="upperBound.Mapping.Attr" />
            <xs:attributeGroup ref="defaultValue.Mapping.Attr" />
        </xs:complexType>

        <xs:complexType name="MatchInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A match interaction is a blockInteraction that presents candidates with two sets of choic-
                    es and allows them to create associates between pairs of choices in the two sets, but not
                    between pairs of choices in the same set. Further restrictions can still be placed on the
                    allowable associations using the matchMax characteristic of the choices. The matchInterac-
                    tion must be bound to a response variable with base-type directedPair and either single or
                    multiple cardinality.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BasePromptInteraction.Type">
                    <xs:sequence>
                        <xs:element ref="simpleMatchSet" minOccurs="2" maxOccurs="2" />
                    </xs:sequence>
                    <xs:attributeGroup ref="shuffle.MatchInteraction.Attr" />
                    <xs:attributeGroup ref="maxAssociations.MatchInteraction.Attr" />
                    <xs:attributeGroup ref="minAssociations.MatchInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="MatchTable.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A matchTable transforms a source integer by finding the first matchTableEntry with an exa-
                    ct match to the source.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="matchTableEntry" minOccurs="1" maxOccurs="unbounded" />
            </xs:sequence>
            <xs:attributeGroup ref="defaultValue.MatchTable.Attr" />
        </xs:complexType>

        <xs:complexType name="MathOperator.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The mathOperator operator takes 1 or more sub-expressions which all have single cardinali-
                    ty and have numerical base-types. The trigonometric functions, sin, cos and tan, take one
                    argument in radians, which evaluates to a single float. Other functions take one numerical
                    argument. Further functions might take more than one numerical argument, e.g. atan2 (two
                    argument arc tan). The result is a single float, except for the functions signum, floor a-
                    nd ceil, which return a single integer. If any of the sub-expressions is NULL, the result
                    is NULL. If any of the sub-expressions falls outside the natural domain of the function c-
                    alled by mathOperator, e.g. log(0) or asin(2), then the result is NULL.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="unbounded">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="name.MathOperator.Attr" />
        </xs:complexType>

        <xs:complexType name="MediaInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The Media Interaction allows more control over the way the candidate interacts with a tim-
                    e-based media object and allows the number of times the media object was experienced to be
                    reported in the value of the associated response variable, which must be of base-type int-
                    eger and single cardinality.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BasePromptInteraction.Type">
                    <xs:choice>
                        <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                    </xs:choice>
                    <xs:attributeGroup ref="autostart.MediaInteraction.Attr" />
                    <xs:attributeGroup ref="minPlays.MediaInteraction.Attr" />
                    <xs:attributeGroup ref="maxPlays.MediaInteraction.Attr" />
                    <xs:attributeGroup ref="loop.MediaInteraction.Attr" />
                    <xs:attributeGroup ref="coords.MediaInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="ModalFeedback.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Modal feedback is shown to the candidate directly following response processing. The value
                    of an outcome variable is used in conjunction with the showHide and identifier characteri-
                    stics to determine whether or not the feedback is shown. The content of the modalFeedback
                    must not contain any interactions.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="0" maxOccurs="unbounded">
                    <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                    <xs:choice minOccurs="1" maxOccurs="1">
                        <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                    </xs:choice>
                </xs:choice>
                <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="apip:apipAccessibility" minOccurs="0" maxOccurs="1" />
            </xs:sequence>
            <xs:attributeGroup ref="outcomeIdentifier.ModalFeedback.Attr" />
            <xs:attributeGroup ref="showHide.ModalFeedback.Attr" />
            <xs:attributeGroup ref="identifier.ModalFeedback.Attr" />
            <xs:attributeGroup ref="title.ModalFeedback.Attr" />
        </xs:complexType>

        <xs:complexType name="NumericLogic1toMany.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is the container for the combination of the one or more child numeric expressions (s-
                    ee the NumericExpressionGroup abstract class for the details on the permitted expressions-
                    ).
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="unbounded">
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="Object.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is the representation for the HTML 'object' tag.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="param" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="data.Object.Attr" />
                    <xs:attributeGroup ref="type.Object.Attr" />
                    <xs:attributeGroup ref="width.Object.Attr" />
                    <xs:attributeGroup ref="height.Object.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="Ordering.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The ordering class specifies the rule used to arrange the child elements of a section fol-
                    lowing selection. If no ordering rule is given, assume that the elements are to be ordered
                    in the order in which they are defined. A sub-section is always treated as a single block
                    for selection but the way it is treated when shuffling depends on its visibility. A visib-
                    le sub-section is always treated as a single block but an invisible sub-section is only t-
                    reated as a single block if its keepTogether characteristic is 'true'. Otherwise, the chi-
                    ld elements of the invisible sub-section are mixed into the parent's selection prior to s-
                    huffling. The ordering class also provides an opportunity for extensions to this specific-
                    ation to include support for more complex ordering algorithms. The selection and ordering
                    rules define a sequence of items for each instance of the test. The sequence starts with
                    the first item of the first section of the first test part and continues through to the l-
                    ast item of the last section of the last test part. This sequence is constant throughout
                    the test. Normally this is the logical sequence perceived by the candidate but the use of
                    preConditions and/or branchRules can affect the specific path taken. The use of selection
                    with replacement enables two or more instances of an item referred to by the same assessm-
                    entItemRef to appear in the sequence of items for a test. It is therefore an error to make
                    such an item the target of a branchRule. Furthermore, when reporting test results the seq-
                    uence number of each item must also be reported to avoid ambiguity. See QTI Results Repor-
                    ting [QTI, 16c]. The ordering class also provides an opportunity for extensions to this s-
                    pecification to include support for more complex ordering algorithms.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:group ref="grpLax.any" />
            </xs:sequence>
            <xs:attributeGroup ref="shuffle.Ordering.Attr" />
            <xs:attributeGroup ref="extension.Ordering.Attr" />
        </xs:complexType>

        <xs:complexType name="OrderInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    In an Order Interaction the candidate's task is to reorder the choices, the order in which
                    the choices are displayed initially is significant. By default the candidate's task is to
                    order all of the choices but a subset of the choices can be requested using the maxChoices
                    and minChoices attributes. When specified the candidate must select a subset of the choic-
                    es and impose an ordering on them.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BasePromptInteraction.Type">
                    <xs:sequence>
                        <xs:element ref="simpleChoice" minOccurs="1" maxOccurs="unbounded" />
                    </xs:sequence>
                    <xs:attributeGroup ref="shuffle.OrderInteraction.Attr" />
                    <xs:attributeGroup ref="minChoices.OrderInteraction.Attr" />
                    <xs:attributeGroup ref="maxChoices.OrderInteraction.Attr" />
                    <xs:attributeGroup ref="orientation.OrderInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="OUL.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Provides the HTML 'ol' and 'ul' tag functionalities. These provide the ordered and unorde-
                    red list capability. The 'ol' tag represents a list of items, where the items have been i-
                    ntentionally ordered, such that changing the order would change the meaning of the docume-
                    nt. The 'ul' tags have no expicit order relationship. The items of the list are the 'li'
                    child nodes.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:element ref="li" minOccurs="0" maxOccurs="unbounded" />
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="OutcomeCondition.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This enables the 'If..Then..Else' rules to be defined for the outcome processing. If the
                    expression given in a outcomeIf or outcomeElseIf evaluates to 'true' then the sub-rules c-
                    ontained within it are followed and any following outcomeElseIf or outcomeElse parts are
                    ignored for this outcome condition. If the expression given in a outcomeIf or outcomeElse-
                    If does not evaluate to 'true' then consideration passes to the next outcomeElseIf or, if
                    there are no more outcomeElseIf parts then the sub-rules of the outcomeElse are followed
                    (if specified).
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="outcomeIf" minOccurs="1" maxOccurs="1" />
                <xs:element ref="outcomeElseIf" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="outcomeElse" minOccurs="0" maxOccurs="1" />
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="OutcomeDeclaration.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Outcome variables are declared by outcome declarations. Their value is set either from a
                    default given in the declaration itself or by a responseRule during responseProcessing. I-
                    tems that declare a numeric outcome variable representing the candidate's overall perform-
                    ance on the item should use the outcome name 'SCORE' for the variable. SCORE needs to be a
                    float. Items that declare a maximum score (in multiple response choice interactions, for
                    example) should do so by declaring the 'MAXSCORE' variable. MAXSCORE needs to be a float.
                    Items or tests that want to make the fact that the candidate scored above a predefined tr-
                    eshold available as a variable should use the 'PASSED' variable. PASSED needs to be a boo-
                    lean. At runtime, outcome variables are instantiated as part of an item session. Their va-
                    lues may be initialized with a default value and/or set during responseProcessing. If no
                    default value is given in the declaration then the outcome variable is initialized to NULL
                    unless the outcome is of a numeric type (integer or float) in which case it is initialized
                    to 0. Declared outcomes with numeric types should indicate their range of possible values
                    using normalMaximum and normalMinimum, especially if this range differs from [0,1].
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="defaultValue" minOccurs="0" maxOccurs="1" />
                <xs:choice minOccurs="0" maxOccurs="1">
                    <xs:element ref="matchTable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="interpolationTable" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="identifier.OutcomeDeclaration.Attr" />
            <xs:attributeGroup ref="cardinality.OutcomeDeclaration.Attr" />
            <xs:attributeGroup ref="baseType.OutcomeDeclaration.Attr" />
            <xs:attributeGroup ref="view.OutcomeDeclaration.Attr" />
            <xs:attributeGroup ref="interpretation.OutcomeDeclaration.Attr" />
            <xs:attributeGroup ref="longInterpretation.OutcomeDeclaration.Attr" />
            <xs:attributeGroup ref="normalMaximum.OutcomeDeclaration.Attr" />
            <xs:attributeGroup ref="normalMinimum.OutcomeDeclaration.Attr" />
            <xs:attributeGroup ref="masteryValue.OutcomeDeclaration.Attr" />
            <xs:attributeGroup ref="externalScored.OutcomeDeclaration.Attr" />
            <xs:attributeGroup ref="variableIdentifierRef.OutcomeDeclaration.Attr" />
        </xs:complexType>

        <xs:complexType name="OutcomeElse.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This provides the else part of the 'if..then..elseif..else' structure for outcomes proces-
                    sing.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="0" maxOccurs="unbounded">
                    <xs:element ref="lookupOutcomeValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeProcessingFragment" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="setOutcomeValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="exitTest" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeCondition" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="OutcomeIf.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    An outcomeIf part consists of an expression which must have an effective baseType of bool-
                    ean and single cardinality. For more information about the runtime data model employed see
                    Expressions (Section 2). It also contains a set of sub-rules. If the expression is true t-
                    hen the sub-rules are processed, otherwise they are skipped (including if the expression
                    is NULL) and the following outcomeElseIf or outcomeElse parts (if any) are considered ins-
                    tead.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
                <xs:choice minOccurs="0" maxOccurs="unbounded">
                    <xs:element ref="lookupOutcomeValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeProcessingFragment" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="setOutcomeValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="exitTest" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeCondition" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="OutcomeProcessing.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Outcome processing takes place each time the candidate submits the responses for an item
                    (when in individual submission mode) or a group of items (when in simultaneous submission
                    mode). It happens after any (item level) response processing triggered by the submission.
                    The values of the test's outcome variables are always reset to their defaults prior to ca-
                    rrying out the instructions described by the outcomeRules. Because outcome processing hap-
                    pens each time the candidate submits responses the resulting values of the test-level out-
                    comes may be used to activate test-level feedback during the test or to control the behav-
                    iour of subsequent parts through the use of preConditions and branchRules. The structure
                    of outcome processing is similar to that or responseProcessing.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="0" maxOccurs="unbounded">
                    <xs:element ref="lookupOutcomeValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeProcessingFragment" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="setOutcomeValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="exitTest" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeCondition" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="OutcomeProcessingFragment.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    An outcomeProcessingFragment is a simple group of outcomeRules which are grouped together
                    in order to allow them to be managed as a separate resource. It should not be used for any
                    other purpose.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="0" maxOccurs="unbounded">
                    <xs:element ref="lookupOutcomeValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeProcessingFragment" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="setOutcomeValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="exitTest" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeCondition" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="PatternMatch.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The patternMatch operator takes a sub-expression which must have single cardinality and a
                    base-type of string. The result is a single boolean with a value of 'true' if the sub-exp-
                    ression matches the regular expression given by pattern and 'false' if it does not. If the
                    sub-expression is NULL then the operator results in NULL.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="pattern.PatternMatch.Attr" />
        </xs:complexType>

        <xs:complexType name="PositionObjectInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The position object interaction consists of a single image which must be positioned on an-
                    other graphic image (the stage) by the candidate. Like selectPointInteraction, the associ-
                    ated response may have an areaMapping that scores the response on the basis of comparing
                    it against predefined areas but the delivery engine must not indicate these areas of the
                    stage. Only the actual position(s) selected by the candidate shall be indicated. The posi-
                    tion object interaction must be bound to a response variable with a baseType of point and
                    single or multiple cardinality. The point records the coordinates, with respect to the st-
                    age, of the centre point of the image being positioned.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceRIdent.Type">
                    <xs:sequence>
                        <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                    </xs:sequence>
                    <xs:attributeGroup ref="centerPoint.PositionObjectInteraction.Attr" />
                    <xs:attributeGroup ref="minChoices.PositionObjectInteraction.Attr" />
                    <xs:attributeGroup ref="maxChoices.PositionObjectInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="PositionObjectStage.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is the content frame for the positionObjectInteraction(s).
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                <xs:element ref="positionObjectInteraction" minOccurs="1" maxOccurs="unbounded" />
            </xs:sequence>
            <xs:attributeGroup ref="id.PositionObjectStage.Attr" />
        </xs:complexType>

        <xs:complexType name="Prompt.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This enables an author to define the prompt for the question.  The way in which the prompt
                    is displayed depends upon the rendering system. The prompt should not be used to contain
                    the actual root of the question.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequence.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="Q.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This provides the content definition for the HTML 'q' tag.  The q element represents some
                    phrasing content quoted from another source. Quotation punctuation (such as quotation mar-
                    ks) that is quoting the contents of the tag must not appear immediately before, after, or
                    inside q tags; they will be inserted into the rendering by the user agent. Content inside
                    a 'q' tag must be quoted from another source, whose address, if it has one, may be cited
                    in the cite attribute. The source may be fictional, as when quoting characters in a novel
                    or screenplay.  The 'q' tag must not be used in place of quotation marks that do not repr-
                    esent quotes; for example, it is inappropriate to use the q element for marking up sarcas-
                    tic statements. The use of 'q' tags to mark up quotations is entirely optional; using exp-
                    licit quotation punctuation without 'q' tags is just as correct.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="gap" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="cite.Q.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="Repeat.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is a QTI expression function. The repeat operator takes one or more sub-expressions,
                    all of which must have either single or ordered cardinality and the same baseType. The re-
                    sult is an ordered container having the same baseType as its sub-expressions. The contain-
                    er is filled sequentially by evaluating each sub-expression in turn and adding the result-
                    ing single values to the container, iterating this process numberRepeats times in total.
                    If numberRepeats refers to a variable whose value is less than 1, the value of the whole
                    expression is NULL. Any sub-expressions evaluating to NULL are ignored. If all sub-expres-
                    sions are NULL then the result is NULL.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="unbounded">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="numberRepeats.Repeat.Attr" />
        </xs:complexType>

        <xs:complexType name="ResponseCondition.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This enables the 'If..Then..Else' rules to be defined for the response processing. If the
                    expression given in a responseIf or responseElseIf evaluates to 'true' then the sub-rules
                    contained within it are followed and any following responseElseIf or responseElse parts a-
                    re ignored for this response condition. If the expression given in a responseIf or respon-
                    seElseIf does not evaluate to 'true' then consideration passes to the next responseElseIf
                    or, if there are no more responseElseIf parts then the sub-rules of the responseElse are
                    followed (if specified).
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="responseIf" minOccurs="1" maxOccurs="1" />
                <xs:element ref="responseElseIf" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="responseElse" minOccurs="0" maxOccurs="1" />
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="ResponseDeclaration.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Response variables are declared by response declarations and bound to interactions in the
                    itemBody. Each response variable declared may be bound to one and only one interaction. At
                    runtime, response variables are instantiated as part of an item session. Their values are
                    always initialized to NULL (no value) regardless of whether or not a default value is giv-
                    en in the declaration. A response variable with a NULL value indicates that the candidate
                    has not offered a response, either because they have not attempted the item at all or bec-
                    ause they have attempted it and chosen not to provide a response. If a default value has
                    been provided for a response variable then the variable is set to this value at the start
                    of the first attempt. If the candidate never attempts the item, in other words, the item
                    session passes straight from the initial state to the closed state without going through
                    the interacting state, then the response variable remains NULL and the default value is n-
                    ever used.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="defaultValue" minOccurs="0" maxOccurs="1" />
                <xs:element ref="correctResponse" minOccurs="0" maxOccurs="1" />
                <xs:element ref="mapping" minOccurs="0" maxOccurs="1" />
                <xs:element ref="areaMapping" minOccurs="0" maxOccurs="1" />
            </xs:sequence>
            <xs:attributeGroup ref="identifier.ResponseDeclaration.Attr" />
            <xs:attributeGroup ref="cardinality.ResponseDeclaration.Attr" />
            <xs:attributeGroup ref="baseType.ResponseDeclaration.Attr" />
        </xs:complexType>

        <xs:complexType name="ResponseElse.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This provides the 'Else' clause of the 'If..Then..Else' for the response processing funct-
                    ionality. If the expression given in a responseIf or responseElseIf evaluates to 'true' t-
                    hen the sub-rules contained within it are followed and any following responseElseIf or re-
                    sponseElse parts are ignored for this response condition. If the expression given in a re-
                    sponseIf or responseElseIf does not evaluate to 'true' then consideration passes to the n-
                    ext responseElseIf or, if there are no more responseElseIf parts then the sub-rules of the
                    responseElse are followed (if specified).
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="0" maxOccurs="unbounded">
                    <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="responseCondition" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="responseProcessingFragment" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="setOutcomeValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="exitResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lookupOutcomeValue" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="ResponseIf.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This provides the 'If' and 'ElseIf' clauses of the 'If..Then..Else' for the response proc-
                    essing functionality. A responseIf part consists of an expression which must have an effe-
                    ctive baseType of boolean and single cardinality. For more information about the runtime
                    data model employed see Expressions (Section 2). It also contains a set of sub-rules. If
                    the expression is 'true' then the sub-rules are processed, otherwise they are skipped (in-
                    cluding if the expression is NULL) and the following responseElseIf or responseElse parts
                    (if any) are considered instead.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
                <xs:choice minOccurs="0" maxOccurs="unbounded">
                    <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="responseCondition" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="responseProcessingFragment" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="setOutcomeValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="exitResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lookupOutcomeValue" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="ResponseProcessing.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Response processing is the process by which the Delivery Engine assigns outcomes based on
                    the candidate's responses. The outcomes may be used to provide feedback to the candidate.
                    Feedback is either provided immediately following the end of the candidate's attempt or it
                    is provided at some later time, perhaps as part of a summary report on the item session.
                    The end of an attempt, and therefore response processing, must only take place in direct
                    response to a user action or in response to some expected event, such as the end of a tes-
                    t. An item session that enters the suspended state may have values for the response varia-
                    bles that have yet to be submitted for response processing.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="0" maxOccurs="unbounded">
                    <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="responseCondition" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="responseProcessingFragment" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="setOutcomeValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="exitResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lookupOutcomeValue" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="template.ResponseProcessing.Attr" />
            <xs:attributeGroup ref="templateLocation.ResponseProcessing.Attr" />
        </xs:complexType>

        <xs:complexType name="ResponseProcessingFragment.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A responseProcessingFragment is a simple group of responseRules which are grouped together
                    in order to allow them to be managed as a separate resource. It should not be used for any
                    other purpose. Note that a response processing template allows a system to carry out resp-
                    onse processing without having to parse the individual response processing rules. On the
                    other hand, a responseProcessing element containing a reference to an externally defined
                    response processing fragment must be parsed to determine the actions to carry out.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="0" maxOccurs="unbounded">
                    <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="responseCondition" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="responseProcessingFragment" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="setOutcomeValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="exitResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lookupOutcomeValue" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="RoundTo.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The roundTo operator takes one sub-expression which must have single cardinality and a nu-
                    merical base-type. The result is a single float with the value nearest to that of the exp-
                    ression's value such that when converted to a decimal string it represents the expression
                    rounded by the specified rounding method to the specified precision. If the sub-expression
                    is NULL, then the result is NULL. If the sub-expression is INF, then the result is INF. If
                    the sub-expression is -INF, then the result is -INF. If the argument is NaN, then the res-
                    ult is NULL.
    When rounding to n significant figures, the deciding digit is the (n+1)th di-
                    git counting from the first non-zero digit from the left in the number. If the deciding d-
                    igit is 5 or greater, the nth digit is increased by 1 and all digits to its right are dis-
                    carded; if the deciding digit is less than 5, all digits to the right of the nth digit are
                    discarded.
    When rounding to n decimal places, the deciding digit is the (n+1)th digit cou-
                    nting to the right from the decimal point. If the deciding digit is 5 or greater, the nth
                    digit is increased by 1 and all digits to its right are discarded; if the deciding digit
                    is less than 5, all digits to the right of the nth digit are discarded.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="roundingMode.RoundTo.Attr" />
            <xs:attributeGroup ref="figures.RoundTo.Attr" />
        </xs:complexType>

        <xs:complexType name="RubricBlock.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The container for the rubric block content. A rubric block identifies part of the content
                    that represents instructions to one or more of the actors that view the item. Although ru-
                    bric blocks are defined as simpleBlocks they must not contain interactions. The visibility
                    of nested rubricBlocks is determined by the outermost element. In other words, if an elem-
                    ent is determined to be hidden then all of its content is hidden including conditionally
                    visible elements for which the conditions are satisfied and that therefore would otherwise
                    be visible.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:element name="templateBlock" type="RubricBlockTemplateBlock.Type" minOccurs="1" maxOccurs="1"/>
                            <xs:element name="templateInline" type="RubricBlockTemplateInline.Type" minOccurs="1" maxOccurs="1"/>
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                        <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
                        <xs:element ref="apip:apipAccessibility" minOccurs="0" maxOccurs="1" />
                    </xs:sequence>
                    <xs:attributeGroup ref="use.RubricBlock.Attr" />
                    <xs:attributeGroup ref="view.RubricBlock.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="RubricBlockTemplateBlock.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is the container for the rubric content that is used in the context of a template bl-
                    ock content.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:element name="templateBlock" type="RubricBlockTemplateBlock.Type" minOccurs="1" maxOccurs="1"/>
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                        <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
                        <xs:element ref="apip:apipAccessibility" minOccurs="0" maxOccurs="1" />
                    </xs:sequence>
                    <xs:attributeGroup ref="templateIdentifier.RubricBlockTemplateBlock.Attr" />
                    <xs:attributeGroup ref="showHide.RubricBlockTemplateBlock.Attr" />
                    <xs:attributeGroup ref="identifier.RubricBlockTemplateBlock.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="RubricBlockTemplateInline.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is the container for the rubric content that is used in the context of a template in-
                    line content.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:element name="templateInline" type="RubricBlockTemplateInline.Type" minOccurs="1" maxOccurs="1"/>
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="templateIdentifier.RubricBlockTemplateInline.Attr" />
                    <xs:attributeGroup ref="showHide.RubricBlockTemplateInline.Attr" />
                    <xs:attributeGroup ref="identifier.RubricBlockTemplateInline.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="Selection.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The selection class specifies the rules used to select the child elements of a section for
                    each test session. If no selection rules are given it must be assumed that all elements a-
                    re to be selected. The selection class also provides an opportunity for extensions to this
                    specification to include support for more complex selection algorithms.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:group ref="grpLax.any" />
            </xs:sequence>
            <xs:attributeGroup ref="select.Selection.Attr" />
            <xs:attributeGroup ref="withReplacement.Selection.Attr" />
            <xs:attributeGroup ref="extension.Selection.Attr" />
        </xs:complexType>

        <xs:complexType name="SelectPointInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Like hotspotInteraction, a select point interaction is a graphic interaction. The candida-
                    te's task is to select one or more points. The associated response may have an areaMapping
                    that scores the response on the basis of comparing it against predefined areas but the de-
                    livery engine must not indicate these areas of the image. Only the actual point(s) select-
                    ed by the candidate shall be indicated. The select point interaction must be bound to a r-
                    esponse variable with a baseType of point and single or multiple cardinality.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BasePromptInteraction.Type">
                    <xs:sequence>
                        <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                    </xs:sequence>
                    <xs:attributeGroup ref="minChoices.SelectPointInteraction.Attr" />
                    <xs:attributeGroup ref="maxChoices.SelectPointInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="SetValue.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The setValue rule sets the value of a variable (response, outcome or template) to the val-
                    ue obtained from the associated expression. A variable can be updated with reference to a
                    previously assigned value, in other words, the variable being set may appear in the expre-
                    ssion where it takes the value previously assigned to it. Special care is required when u-
                    sing the numeric base-types because floating point values can not be assigned to integer
                    variables and vice-versa. The truncate, round or integerToFloat operators must be used to
                    achieve numeric type conversion.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="identifier.SetValue.Attr" />
        </xs:complexType>

        <xs:complexType name="SimpleAssociableChoice.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is an ordered set of choices for the set.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequence.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="identifier.SimpleAssociableChoice.Attr" />
                    <xs:attributeGroup ref="fixed.SimpleAssociableChoice.Attr" />
                    <xs:attributeGroup ref="templateIdentifier.SimpleAssociableChoice.Attr" />
                    <xs:attributeGroup ref="showHide.SimpleAssociableChoice.Attr" />
                    <xs:attributeGroup ref="matchGroup.SimpleAssociableChoice.Attr" />
                    <xs:attributeGroup ref="matchMax.SimpleAssociableChoice.Attr" />
                    <xs:attributeGroup ref="matchMin.SimpleAssociableChoice.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="SimpleChoice.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A simpleChoice is a choice that contains flowStatic objects. A simpleChoice must not cont-
                    ain any nested interactions.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequence.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="identifier.SimpleChoice.Attr" />
                    <xs:attributeGroup ref="fixed.SimpleChoice.Attr" />
                    <xs:attributeGroup ref="templateIdentifier.SimpleChoice.Attr" />
                    <xs:attributeGroup ref="showHide.SimpleChoice.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="SimpleMatchSet.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is the ordered set of choices for the match set.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="simpleAssociableChoice" minOccurs="0" maxOccurs="unbounded" />
            </xs:sequence>
            <xs:attributeGroup ref="id.SimpleMatchSet.Attr" />
        </xs:complexType>

        <xs:complexType name="SliderInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The Slider Interaction presents the candidate with a control for selecting a numerical va-
                    lue between a lower and upper bound. It must be bound to a response variable with single
                    cardinality with a base-type of either integer or float.
    Note that a slider interaction d-
                    oes not have a default or initial position except where specified by a default value for
                    the associated response variable. The currently selected value, if any, must be clearly i-
                    ndicated to the candidate. Because a slider interaction does not have a default or initial
                    position, except where specified by a default value for the associated response variable,
                    it is difficult to distinguish between an intentional response that corresponds to the sl-
                    ider's initial position and a NULL response. As a workaround, sliderInteraction items have
                    to either a) not count NULL responses (i.e. count all responses as intentional) or b) inc-
                    lude a 'skip' button and count its activation combined with a RESPONSE variable that is e-
                    qual to the slider's initial position as a NULL response
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BasePromptInteraction.Type">
                    <xs:attributeGroup ref="lowerBound.SliderInteraction.Attr" />
                    <xs:attributeGroup ref="upperBound.SliderInteraction.Attr" />
                    <xs:attributeGroup ref="step.SliderInteraction.Attr" />
                    <xs:attributeGroup ref="stepLabel.SliderInteraction.Attr" />
                    <xs:attributeGroup ref="orientation.SliderInteraction.Attr" />
                    <xs:attributeGroup ref="reverse.SliderInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="StatsOperator.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The statsOperator operator takes 1 sub-expression which is a container of multiple or ord-
                    ered cardinality and has a numerical base-type. The result is a single float. If the sub--
                    expression or any value contained therein is NULL, the result is NULL. If any value conta-
                    ined in the sub-expression is not a numerical value, then the result is NULL.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="name.StatsOperator.Attr" />
        </xs:complexType>

        <xs:complexType name="StimulusBody.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is the container for the content that is to be defined as the common stimulus in an
                    Item cf. ItemBody. The stimulus body contains the text, graphics, media objects and inter-
                    actions that describe the common content and information about how it is structured. The
                    body is presented by combining it with stylesheet information, either explicitly or impli-
                    citly using the default style rules of the delivery or authoring system.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequence.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="1" maxOccurs="unbounded">
                            <xs:element ref="positionObjectStage" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="drawingInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="gapMatchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="matchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicGapMatchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hotspotInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicOrderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="selectPointInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicAssociateInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sliderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="choiceInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="mediaInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hottextInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="orderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="extendedTextInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="uploadInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="associateInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="infoControl" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="StringMatch.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The stringMatch operator takes two sub-expressions which must have single and a base-type
                    of string. The result is a single boolean with a value of true if the two strings match a-
                    ccording to the comparison rules defined by the attributes below and false if they don't.
                    If either sub-expression is NULL then the operator results in NULL.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="2" maxOccurs="2">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="caseSensitive.StringMatch.Attr" />
            <xs:attributeGroup ref="substring.StringMatch.Attr" />
        </xs:complexType>

        <xs:complexType name="Substring.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The substring operator takes two sub-expressions which must both have an effective base-t-
                    ype of string and single cardinality. The result is a single boolean with a value of true
                    if the first expression is a substring of the second expression and false if it isn't. If
                    either sub-expression is NULL then the result of the operator is NULL.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="2" maxOccurs="2">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="caseSensitive.Substring.Attr" />
        </xs:complexType>

        <xs:complexType name="Table.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This provides the HTML 'table' tag functionality within the QTI context.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:element ref="caption" minOccurs="0" maxOccurs="1" />
                        <xs:element ref="col" minOccurs="0" maxOccurs="unbounded" />
                        <xs:element ref="colgroup" minOccurs="0" maxOccurs="unbounded" />
                        <xs:element ref="thead" minOccurs="0" maxOccurs="1" />
                        <xs:element ref="tfoot" minOccurs="0" maxOccurs="1" />
                        <xs:element ref="tbody" minOccurs="1" maxOccurs="unbounded" />
                    </xs:sequence>
                    <xs:attributeGroup ref="summary.Table.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="TablePart.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This allows the construction of the internal structures in the HTML Table tag, namely: the
                    head, foot and body of the table.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequence.Type">
                    <xs:sequence>
                        <xs:element ref="tr" minOccurs="1" maxOccurs="unbounded" />
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="TDH.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This class allows the defnition of the contents of the HTML 'td' and 'th' tags i.e. the t-
                    able cells used within the table rows.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequence.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="textEntryInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="inlineChoiceInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="endAttemptInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="customInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="drawingInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="gapMatchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="matchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicGapMatchInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hotspotInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicOrderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="selectPointInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="graphicAssociateInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="sliderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="choiceInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="mediaInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="hottextInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="orderInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="extendedTextInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="uploadInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="associateInteraction" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="headers.TDH.Attr" />
                    <xs:attributeGroup ref="scope.TDH.Attr" />
                    <xs:attributeGroup ref="abbr.TDH.Attr" />
                    <xs:attributeGroup ref="axis.TDH.Attr" />
                    <xs:attributeGroup ref="rowspan.TDH.Attr" />
                    <xs:attributeGroup ref="colspan.TDH.Attr" />
                    <xs:attributeGroup ref="align.TDH.Attr" />
                    <xs:attributeGroup ref="valign.TDH.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="TemplateBlock.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This class is used to define the block content structures that are available for the crea-
                    tion of Item templates. A templateBlock must not contain any interactions, either directly
                    or indirectly.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element name="feedbackBlock" type="TemplateBlockFeedbackBlock.Type" minOccurs="1" maxOccurs="1"/>
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                        <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
                        <xs:element ref="apip:apipAccessibility" minOccurs="0" maxOccurs="1" />
                    </xs:sequence>
                    <xs:attributeGroup ref="templateIdentifier.TemplateBlock.Attr" />
                    <xs:attributeGroup ref="showHide.TemplateBlock.Attr" />
                    <xs:attributeGroup ref="identifier.TemplateBlock.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="TemplateBlockFeedbackBlock.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This enables the Block content to be placed in template blocks. This structure is used to
                    add constraints on how the block content can be used in recursive block templates.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element name="feedbackBlock" type="TemplateBlockFeedbackBlock.Type" minOccurs="1" maxOccurs="1"/>
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                        <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
                        <xs:element ref="apip:apipAccessibility" minOccurs="1" maxOccurs="1" />
                    </xs:sequence>
                    <xs:attributeGroup ref="outcomeIdentifier.TemplateBlockFeedbackBlock.Attr" />
                    <xs:attributeGroup ref="showHide.TemplateBlockFeedbackBlock.Attr" />
                    <xs:attributeGroup ref="identifier.TemplateBlockFeedbackBlock.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="TemplateCondition.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This class enables the definition of the template processing 'If..Then..Else' clause. If
                    the expression given in the templateIf or templateElseIf evaluates to 'true' then the sub-
                    -rules contained within it are followed and any following templateElseIf or templateElse
                    parts are ignored for this template condition. If the expression given in the templateIf
                    or templateElseIf does not evaluate to 'true' then consideration passes to the next templ-
                    ateElseIf or, if there are no more templateElseIf parts then the sub-rules of the templat-
                    eElse are followed (if specified).
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="templateIf" minOccurs="1" maxOccurs="1" />
                <xs:element ref="templateElseIf" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="templateElse" minOccurs="0" maxOccurs="1" />
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="TemplateConstraint.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A templateConstraint contains an expression which must have an effective baseType of bool-
                    ean and single cardinality. For more information about the runtime data model employed see
                    Expressions (Section 2). If the expression is 'false' (including if the expression is NUL-
                    L), the template variables are set to their default values and templateProcessing is rest-
                    arted; this happens repeatedly until the expression is 'true' or the maximum number of it-
                    erations is reached. In the event that the maximum number of iterations is reached, any d-
                    efault values provided for the variables during declaration are used. Processing then con-
                    tinues with the next templateRule after the templateConstraint, or finishes if there are
                    no further templateRules. By using a templateConstraint, authors can ensure that the valu-
                    es of variables set during templateProcessing satisfy the condition specified by the bool-
                    ean expression. For example, two randomly selected numbers might be required which have no
                    common factors. A templateConstraint may occur anywhere as a child of templateProcessing.
                    It may not be used as a child of any other element. Any number of templateConstraints may
                    be used, though two or more consecutive templateConstraints could be combined using the '-
                    and' element to combine their boolean expressions. The maximum number of times that the o-
                    perations preceding the templateConstraint can be expected to be performed is assumed to
                    be 100; implementations may permit more iterations, but there must be a finite maximum nu-
                    mber of iterations. This prevents the occurrence of an endless loop. It is the responsibi-
                    lity of the author to provide default values for any variables assigned under a templateC-
                    onstraint.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="TemplateDeclaration.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Template declarations declare item variables that are to be used specifically for the pur-
                    poses of cloning items. They can have their value set only during templateProcessing. They
                    are referred to within the itemBody in order to individualize the clone and possibly also
                    within the responseProcessing rules if the cloning process affects the way the item is sc-
                    ored.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="defaultValue" minOccurs="0" maxOccurs="1" />
            </xs:sequence>
            <xs:attributeGroup ref="identifier.TemplateDeclaration.Attr" />
            <xs:attributeGroup ref="cardinality.TemplateDeclaration.Attr" />
            <xs:attributeGroup ref="baseType.TemplateDeclaration.Attr" />
            <xs:attributeGroup ref="paramVariable.TemplateDeclaration.Attr" />
            <xs:attributeGroup ref="mathVariable.TemplateDeclaration.Attr" />
        </xs:complexType>

        <xs:complexType name="TemplateDefault.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The default value of a template variable in an item can be overridden based on the test c-
                    ontext in which the template is instantiated. The value is obtained by evaluating an expr-
                    ession defined within the reference to the item at test level and which may therefore dep-
                    end on the values of variables taken from other items in the test or from outcomes defined
                    at test level itself. For consistent results it is vital that the expression is evaluated
                    at the correct time. When the assessmentItemRef occurs in a testPart navigated in linear
                    mode the expression is evaluated immediately prior to the start of the first attempt, aft-
                    er any pre-conditions are evaluated and acted upon but before the templateProcessing rules
                    of the item itself are followed. In nonlinear mode the expression is evaluated at the sta-
                    rt of the testPart. In both cases, the timing is unaffected by the submissionMode in effe-
                    ct. Care needs to be taken to ensure that values of response variables are not used before
                    they have been submitted and that outcome variables are not used before their values have
                    been set by the corresponding response or outcomes processing steps. The facility of over-
                    riding template defaults allows item templates to be linked to other items (or templates)
                    within a test. A candidate response from one item can be used directly to affect the pres-
                    entation or even the behaviour of an item presented after it. However once the template is
                    instantiated it operates independently - there is no dynamic link created between the ite-
                    ms and no concept of a shared variable space between them.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
            <xs:attributeGroup ref="templateIdentifier.TemplateDefault.Attr" />
        </xs:complexType>

        <xs:complexType name="TemplateElse.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This enables the definition of the 'Else' clause of the 'If..Then..Else' rule construction
                    when defining a template.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="0" maxOccurs="unbounded">
                    <xs:element ref="setTemplateValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="exitTemplate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="templateCondition" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="setDefaultValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="setCorrectResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="templateConstraint" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="TemplateIf.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This provides the 'If' and 'ElseIf' clauses of the 'If..Then..Else' for the template proc-
                    essing functionality. A responseIf part consists of an expression which must have an effe-
                    ctive baseType of boolean and single cardinality. For more information about the runtime
                    data model employed see Expressions (Section 2). It also contains a set of sub-rules. If
                    the expression is true then the sub-rules are processed, otherwise they are skipped (incl-
                    uding if the expression is NULL) and the following templateElseIf or templateElse parts (-
                    if any) are considered instead.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="1">
                    <xs:element ref="and" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="not" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lt" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lte" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="or" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="sum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationLT" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="durationGTE" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="subtract" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="divide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="multiple" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="ordered" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="customOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="random" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberIncorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberCorrect" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberPresented" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberResponded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="numberSelected" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="substring" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equalRounded" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="null" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="delete" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="match" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="index" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="power" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="equal" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="contains" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="containerSize" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="correct" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="default" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="anyN" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerDivide" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerModulus" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="isNull" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="member" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="product" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="round" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="truncate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="fieldValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomInteger" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="randomFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="variable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMinimum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="outcomeMaximum" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="testVariables" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="integerToFloat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="inside" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="baseValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="patternMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponsePoint" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mapResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="stringMatch" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="repeat" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="roundTo" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="lcm" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="gcd" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="min" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="max" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathConstant" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="statsOperator" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="mathOperator" minOccurs="1" maxOccurs="1" />
                </xs:choice>
                <xs:choice minOccurs="0" maxOccurs="unbounded">
                    <xs:element ref="setTemplateValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="exitTemplate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="templateCondition" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="setDefaultValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="setCorrectResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="templateConstraint" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="TemplateInline.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This enables the Inline content to be placed in templates. This structure is used to add
                    constraints on how the inline content can be used in recursive templates.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBase.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="gap" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="feedbackInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                            <xs:choice minOccurs="1" maxOccurs="1">
                                <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                                <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                                <xs:choice minOccurs="1" maxOccurs="1">
                                    <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                                    <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                                </xs:choice>
                            </xs:choice>
                        </xs:choice>
                    </xs:sequence>
                    <xs:attributeGroup ref="templateIdentifier.TemplateInline.Attr" />
                    <xs:attributeGroup ref="showHide.TemplateInline.Attr" />
                    <xs:attributeGroup ref="identifier.TemplateInline.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="TemplateProcessing.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Template processing consists of one or more templateRules that are followed by the cloning
                    engine or delivery system in order to assign values to the template variables. Template p-
                    rocessing is identical in form to responseProcessing except that the purpose is to assign
                    values to template variables, not outcome variables.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="1" maxOccurs="unbounded">
                    <xs:element ref="setTemplateValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="exitTemplate" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="templateCondition" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="setDefaultValue" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="setCorrectResponse" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="templateConstraint" minOccurs="1" maxOccurs="1" />
                </xs:choice>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="TestFeedback.Type" abstract="false" mixed="true">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This enables the definition of the test-level feedback including the content and when the
                    feedback is to be revealed.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:choice minOccurs="0" maxOccurs="unbounded">
                    <xs:element ref="printedVariable" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="hottext" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="templateInline" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="templateBlock" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="m2:math" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="m3:math" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="xi:include" minOccurs="1" maxOccurs="1" />
                    <xs:choice minOccurs="1" maxOccurs="1">
                        <xs:element ref="pre" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h1" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h2" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h3" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h4" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h5" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="h6" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="p" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="address" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="dl" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ol" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="ul" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="br" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="hr" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="img" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="object" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="blockquote" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="em" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="a" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="code" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="span" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="sub" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="acronym" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="big" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="tt" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="kbd" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="q" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="i" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="dfn" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="abbr" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="strong" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="sup" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="var" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="small" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="samp" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="b" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="cite" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="table" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="div" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="bdo" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:bdi" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:figure" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:audio" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:video" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:article" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:aside" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:footer" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:header" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:label" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:nav" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:section" minOccurs="1" maxOccurs="1" />
                        <xs:element ref="qh5:ruby" minOccurs="1" maxOccurs="1" />
                        <xs:choice minOccurs="1" maxOccurs="1">
                            <xs:element ref="ssml11:p" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:s" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:say-as" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:phoneme" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:sub" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:voice" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:emphasis" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:break" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:prosody" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:mark" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:audio" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="ssml11:speak" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                    </xs:choice>
                </xs:choice>
                <xs:element ref="stylesheet" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="apip:apipAccessibility" minOccurs="0" maxOccurs="1" />
            </xs:sequence>
            <xs:attributeGroup ref="access.TestFeedback.Attr" />
            <xs:attributeGroup ref="outcomeIdentifier.TestFeedback.Attr" />
            <xs:attributeGroup ref="showHide.TestFeedback.Attr" />
            <xs:attributeGroup ref="identifier.TestFeedback.Attr" />
            <xs:attributeGroup ref="title.TestFeedback.Attr" />
        </xs:complexType>

        <xs:complexType name="TestPart.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A test is composed of one or more test parts. A testPart represents a major division of t-
                    he test and is used to control the basic mode parameters that apply to all sections and s-
                    ub-sections within that part.
                </xs:documentation>
            </xs:annotation>
            <xs:sequence>
                <xs:element ref="preCondition" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="branchRule" minOccurs="0" maxOccurs="unbounded" />
                <xs:element ref="itemSessionControl" minOccurs="0" maxOccurs="1" />
                <xs:element ref="timeLimits" minOccurs="0" maxOccurs="1" />
                <xs:choice minOccurs="1" maxOccurs="unbounded">
                    <xs:element ref="assessmentSection" minOccurs="1" maxOccurs="1" />
                    <xs:element ref="assessmentSectionRef" minOccurs="1" maxOccurs="1" />
                </xs:choice>
                <xs:element ref="testFeedback" minOccurs="0" maxOccurs="unbounded" />
            </xs:sequence>
            <xs:attributeGroup ref="identifier.TestPart.Attr" />
            <xs:attributeGroup ref="navigationMode.TestPart.Attr" />
            <xs:attributeGroup ref="submissionMode.TestPart.Attr" />
        </xs:complexType>

        <xs:complexType name="TextEntryInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A TextEntry Interaction is an inlineInteraction that obtains a simple piece of text from
                    the candidate. Like inlineChoiceInteraction, the delivery engine must allow the candidate
                    to review their choice within the context of the surrounding text. The textEntryInteracti-
                    on must be bound to a response variable with single or record cardinality only. If the re-
                    sponse variable has single cardinality the baseType must be one of string, integer or flo-
                    at; if it has record cardinality the permitted fields are 'stringValue', 'floatValue', et-
                    c.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequenceXBaseEmpty.Type">
                    <xs:attributeGroup ref="responseIdentifier.TextEntryInteraction.Attr" />
                    <xs:attributeGroup ref="base.TextEntryInteraction.Attr" />
                    <xs:attributeGroup ref="stringIdentifier.TextEntryInteraction.Attr" />
                    <xs:attributeGroup ref="expectedLength.TextEntryInteraction.Attr" />
                    <xs:attributeGroup ref="patternMask.TextEntryInteraction.Attr" />
                    <xs:attributeGroup ref="placeholderText.TextEntryInteraction.Attr" />
                    <xs:attributeGroup ref="format.TextEntryInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="TR.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This makes the HTML tag 'tr' available for the definition of tables.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BaseSequence.Type">
                    <xs:sequence>
                        <xs:choice minOccurs="1" maxOccurs="unbounded">
                            <xs:element ref="td" minOccurs="1" maxOccurs="1" />
                            <xs:element ref="th" minOccurs="1" maxOccurs="1" />
                        </xs:choice>
                    </xs:sequence>
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="UploadInteraction.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The Upload Interaction allows the candidate to upload a pre-prepared file representing th-
                    eir response. It must be bound to a response variable with base-type file and single card-
                    inality.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="BasePromptInteraction.Type">
                    <xs:attributeGroup ref="type.UploadInteraction.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <!-- ================================================================================================== -->

        <!-- Generate the SOAP Binding ComplexTypes *********************************************************** -->

        <!-- ================================================================================================== -->

        <!-- Generate the derived ComplexTypes **************************************************************** -->

        <xs:complexType name="AreaMapEntry.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The map is defined by a set of areaMapEntries, each of which maps an area of the coordina-
                    te space onto a single float. When mapping points each area is tested in turn, with those
                    listed first taking priority in the case where areas overlap and a point falls in the int-
                    ersection.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="shape.AreaMapEntry.Attr" />
                    <xs:attributeGroup ref="coords.AreaMapEntry.Attr" />
                    <xs:attributeGroup ref="mappedValue.AreaMapEntry.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="AssessmentSectionRef.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Sections can be included into testParts or other assessmentSections by aggregation or by
                    reference. The assessmentSectionRef element enables the inclusion by reference. The only
                    documents that can be refered to by assessmentSectionRef are XML documents that contain a
                    single assessmentSection as a single root. There are no other restrictions on the referen-
                    ced assessmentSection document. The assessmentSectionRef element functions as a facade for
                    the assessmentSection it refers to. That means that, at runtime, the document that contai-
                    ns the reference - with the refered-to section merged in - should behave exactly the same
                    as a document that has all the same sections aggregated in one document. Adaptive test br-
                    anch rules can only refer to included or directly referenced sections, they can not refer
                    to sections that are in their turn included or referenced within the referenced section.
                    That is to say, branching rules should treat referred sections as leaf nodes, that have no
                    children that are amenable to branching separately from their immediate parent.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="identifier.AssessmentSectionRef.Attr" />
                    <xs:attributeGroup ref="href.AssessmentSectionRef.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="AssessmentStimulusRef.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is the structure that enables reference to an 'assessmentStimulus' instance. The sti-
                    mulus must be contained within its own instance and so the Item uses the 'assessmentStimu-
                    lusRef' structure to provide the link between the Item and the Stimulus.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="identifier.AssessmentStimulusRef.Attr" />
                    <xs:attributeGroup ref="href.AssessmentStimulusRef.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="BaseSequenceXBaseEmpty.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is the base class for the HTML features and some QTI interactions that have no child-
                    ren elements i.e. must be empty. This consists of a set of child characteristics.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="id.BaseSequenceXBaseEmpty.Attr" />
                    <xs:attributeGroup ref="class.BaseSequenceXBaseEmpty.Attr" />
                    <xs:attributeGroup ref="language.BaseSequenceXBaseEmpty.Attr" />
                    <xs:attributeGroup ref="label.BaseSequenceXBaseEmpty.Attr" />
                    <xs:attributeGroup ref="base.BaseSequenceXBaseEmpty.Attr" />
                    <xs:attributeGroup ref="dir.BaseSequenceXBaseEmpty.Attr" />
                    <xs:attributeGroup ref="role.BaseSequenceXBaseEmpty.Attr" />
                    <xs:attributeGroup ref="aria-controls.BaseSequenceXBaseEmpty.Attr" />
                    <xs:attributeGroup ref="aria-describedby.BaseSequenceXBaseEmpty.Attr" />
                    <xs:attributeGroup ref="aria-flowsto.BaseSequenceXBaseEmpty.Attr" />
                    <xs:attributeGroup ref="aria-label.BaseSequenceXBaseEmpty.Attr" />
                    <xs:attributeGroup ref="aria-labelledby.BaseSequenceXBaseEmpty.Attr" />
                    <xs:attributeGroup ref="aria-level.BaseSequenceXBaseEmpty.Attr" />
                    <xs:attributeGroup ref="aria-live.BaseSequenceXBaseEmpty.Attr" />
                    <xs:attributeGroup ref="aria-orientation.BaseSequenceXBaseEmpty.Attr" />
                    <xs:attributeGroup ref="aria-owns.BaseSequenceXBaseEmpty.Attr" />
                    <xs:attributeGroup ref="dataExtension.BaseSequenceXBaseEmpty.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="BaseValue.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    One of the QTI expression functions. The simplest expression returns a single value from
                    the set defined by the given baseType.
                </xs:documentation>
            </xs:annotation>
            <xs:simpleContent>
                <xs:extension base="xs:string">
                    <xs:attributeGroup ref="baseType.BaseValue.Attr" />
                </xs:extension>
            </xs:simpleContent>
        </xs:complexType>

        <xs:complexType name="Correct.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is a QTI expression. This expression looks up the declaration of a response variable
                    and returns the associated correctResponse or NULL if no correct value was declared. When
                    used in outcomes processing item identifier prefixing (see variable) may be used to obtain
                    the correct response from an individual item.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="identifier.Correct.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="Default.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is one of the QTI expression functions. This expression looks up the declaration of
                    an itemVariable and returns the associated defaultValue or NULL if no default value was d-
                    eclared. When used in outcomes processing item identifier prefixing (see variable) may be
                    used to obtain the default value from an individual item.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="identifier.Default.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="InterpolationTableEntry.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Provides an interpolation table entry in the associated interpolation table.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="sourceValue.InterpolationTableEntry.Attr" />
                    <xs:attributeGroup ref="includeBoundary.InterpolationTableEntry.Attr" />
                    <xs:attributeGroup ref="targetValue.InterpolationTableEntry.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="ItemSessionControl.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    When items are referenced as part of a test, the test may impose constraints on how many
                    attempts, and which states are allowed. These constraints can be specified for individual
                    items, for whole sections or for an entire testPart. By default, a setting at testPart le-
                    vel affects all items in that part unless the setting is overridden at the assessmentSect-
                    ion level or ultimately at the individual assessmentItemRef. The defaults for an ItemSess-
                    ionControl are used only in the absence of any applicable constraint.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="maxAttempts.ItemSessionControl.Attr" />
                    <xs:attributeGroup ref="showFeedback.ItemSessionControl.Attr" />
                    <xs:attributeGroup ref="allowReview.ItemSessionControl.Attr" />
                    <xs:attributeGroup ref="showSolution.ItemSessionControl.Attr" />
                    <xs:attributeGroup ref="allowComment.ItemSessionControl.Attr" />
                    <xs:attributeGroup ref="allowSkipping.ItemSessionControl.Attr" />
                    <xs:attributeGroup ref="validateResponses.ItemSessionControl.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="MapEntry.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is a part of the mapping functionality. The map is defined by a set of mapEntries, e-
                    ach of which maps a single value from the source set onto a single float.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="mapKey.MapEntry.Attr" />
                    <xs:attributeGroup ref="mappedValue.MapEntry.Attr" />
                    <xs:attributeGroup ref="caseSensitive.MapEntry.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="MapResponse.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is a QTI expression function. This expression looks up the value of a response varia-
                    ble and then transforms it using the associated mapping, which must have been declared. T-
                    he result is a single float. If the response variable has single cardinality then the val-
                    ue returned is simply the mapped target value from the map. If the response variable has
                    multiple or ordered cardinality then the value returned is the sum of the mapped target v-
                    alues. This expression cannot be applied to variables of record cardinality. For example,
                    if a mapping associates the identifiers {A,B,C,D} with the values {0,1,0.5,0} respectively
                    then mapResponse will map the single value 'C' to the numeric value 0.5 and the set of va-
                    lues {C,B} to the value 1.5. If a container contains multiple instances of the same value
                    then that value is counted once only. To continue the example above {B,B,C} would still m-
                    ap to 1.5 and not 2.5.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="identifier.MapResponse.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="MatchTableEntry.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A matchTable transforms a source integer by finding the first matchTableEntry with an exa-
                    ct match to the source. The MatchTableEntry allows the definition of each entry in the ta-
                    ble.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="sourceValue.MatchTableEntry.Attr" />
                    <xs:attributeGroup ref="targetValue.MatchTableEntry.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="MathConstant.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is a QTI expression function. The result is a mathematical constant returned as a si-
                    ngle float, e.g. Pi and e.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="name.MathConstant.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="Number.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is base class for some of the QTI expressions. This is the data-type used in some of
                    the functions that are used in Outcome Processing only and which provide summative inform-
                    ation.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="sectionIdentifier.Number.Attr" />
                    <xs:attributeGroup ref="includeCategory.Number.Attr" />
                    <xs:attributeGroup ref="excludeCategory.Number.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="OutcomeMinMax.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                     This is a data-type for the 'outcomeMinimum' and 'outcomeMaximum' QTI expressions for ou-
                    tcome processing.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="sectionIdentifier.OutcomeMinMax.Attr" />
                    <xs:attributeGroup ref="includeCategory.OutcomeMinMax.Attr" />
                    <xs:attributeGroup ref="excludeCategory.OutcomeMinMax.Attr" />
                    <xs:attributeGroup ref="outcomeIdentifier.OutcomeMinMax.Attr" />
                    <xs:attributeGroup ref="weightIdentifier.OutcomeMinMax.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="Param.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is the container for a parameter being passed to the HTML 'object' tag.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="name.Param.Attr" />
                    <xs:attributeGroup ref="value.Param.Attr" />
                    <xs:attributeGroup ref="valuetype.Param.Attr" />
                    <xs:attributeGroup ref="type.Param.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="PrintedVariable.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The outcome variable or template variable must have been defined. The values of response
                    variables cannot be printed directly as their values are implicitly known to the candidate
                    through the interactions they are bound to; if necessary, their values can be assigned to
                    outcomes during responseProcessing and displayed to the candidate as part of a bodyElement
                    visible only in the appropriate feedback states.

    If the variable's value is NULL then the
                    element is ignored.

    Variables of baseType string are treated as simple runs of text.

    Va-
                    riables of baseType integer or float are converted to runs of text (strings) using the fo-
                    rmatting rules described below. Float values should only be formatted in the e, E, f, g,
                    G, r or R styles.

    Variables of baseType duration are treated as floats, representing the
                    duration in seconds.

    Variables of baseType file are rendered using a control that enables
                    the user to open the file. The control should display the name associated with the file,
                    if any.

    Variables of baseType uri are rendered using a control that enables the user to
                    open the identified resource, for example, by following a hypertext link in the case of a
                    URL.

    For variables of single cardinality, the value of the variable is printed.

    For var-
                    iables of ordered cardinality, if the attribute index is set, the single value correspond-
                    ing to the indexed member is printed, otherwise an ordered list of the values within the
                    container is printed, delimited by the string value of the delimiter attribute.

    For vari-
                    ables of multiple cardinality, a list of the values within the container is printed, deli-
                    mited by the string value of the delimiter attribute.

    For variables of record cardinalit-
                    y, if the attribute field is set, the value corresponding to the specified field is print-
                    ed, otherwise a list of the field names and corresponding field values within the variable
                    is printed, delimited by the string value of the delimiter attribute and with the corresp-
                    ondence between them indicated by the string value of the mappingIndicator attribute.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="id.PrintedVariable.Attr" />
                    <xs:attributeGroup ref="class.PrintedVariable.Attr" />
                    <xs:attributeGroup ref="language.PrintedVariable.Attr" />
                    <xs:attributeGroup ref="label.PrintedVariable.Attr" />
                    <xs:attributeGroup ref="baseuri.PrintedVariable.Attr" />
                    <xs:attributeGroup ref="identifier.PrintedVariable.Attr" />
                    <xs:attributeGroup ref="format.PrintedVariable.Attr" />
                    <xs:attributeGroup ref="base.PrintedVariable.Attr" />
                    <xs:attributeGroup ref="index.PrintedVariable.Attr" />
                    <xs:attributeGroup ref="powerForm.PrintedVariable.Attr" />
                    <xs:attributeGroup ref="field.PrintedVariable.Attr" />
                    <xs:attributeGroup ref="delimiter.PrintedVariable.Attr" />
                    <xs:attributeGroup ref="mappingIndicator.PrintedVariable.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="RandomFloat.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is a QTI expresssion function. Selects a random float from the specified range [min,-
                    max].
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="min.RandomFloat.Attr" />
                    <xs:attributeGroup ref="max.RandomFloat.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="RandomInteger.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is a QTI expression function. Selects a random integer from the specified range [min-
                    ,max] satisfying min + step * n for some integer n. For example, with min=2, max=11 and s-
                    tep=3 the values {2,5,8,11} are possible.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="min.RandomInteger.Attr" />
                    <xs:attributeGroup ref="max.RandomInteger.Attr" />
                    <xs:attributeGroup ref="step.RandomInteger.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="StyleSheet.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Used to associate an external stylesheet with an object such as an assessmentItem, etc. Q-
                    TI supports CSS 2.1 and CSS 3.0.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="href.StyleSheet.Attr" />
                    <xs:attributeGroup ref="type.StyleSheet.Attr" />
                    <xs:attributeGroup ref="media.StyleSheet.Attr" />
                    <xs:attributeGroup ref="title.StyleSheet.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="TestVariables.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is a QTI expression function. This expression, which can only be used in outcomes pr-
                    ocessing, simultaneously looks up the value of an itemVariable in a sub-set of the items
                    referred to in a test. Only variables with single cardinality are considered, all NULL va-
                    lues are ignored. The result has cardinality multiple and base-type as specified below.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="sectionIdentifier.TestVariables.Attr" />
                    <xs:attributeGroup ref="includeCategory.TestVariables.Attr" />
                    <xs:attributeGroup ref="excludeCategory.TestVariables.Attr" />
                    <xs:attributeGroup ref="variableIdentifier.TestVariables.Attr" />
                    <xs:attributeGroup ref="weightIdentifier.TestVariables.Attr" />
                    <xs:attributeGroup ref="baseType.TestVariables.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="TimeLimits.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    In the context of a specific assessmentTest an item, or group of items, may be subject to
                    a time constraint. This specification supports both minimum and maximum time constraints.
                    The controlled time for a single item is simply the duration of the item session as defin-
                    ed by the builtin response variable duration. For assessmentSections, testParts and whole
                    assessmentTests the time limits relate to the durations of all the item sessions plus any
                    other time spent navigating that part of the test. In other words, the time includes time
                    spent in states where no item is being interacted with, such as dedicated navigation scre-
                    ens. The allowLateSubmission attribute regulates whether a candidate's response that is b-
                    eyond the maxTime should still be accepted. Minimum times are applicable to assessmentSec-
                    tions and assessmentItems only when linear navigation mode is in effect.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="minTime.TimeLimits.Attr" />
                    <xs:attributeGroup ref="maxTime.TimeLimits.Attr" />
                    <xs:attributeGroup ref="allowLateSubmission.TimeLimits.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="Value.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    A class that can represent a single value of any baseType in variable declarations and re-
                    sult reports. The base-type is defined by the baseType attribute of the declaration except
                    in the case of variables with record cardinality.
                </xs:documentation>
            </xs:annotation>
            <xs:simpleContent>
                <xs:extension base="xs:normalizedString">
                    <xs:attributeGroup ref="fieldIdentifier.Value.Attr" />
                    <xs:attributeGroup ref="baseType.Value.Attr" />
                </xs:extension>
            </xs:simpleContent>
        </xs:complexType>

        <xs:complexType name="Variable.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    This is a QTI expression function. This expression looks up the value of an itemVariable
                    that has been declared in a corresponding variableDeclaration or is one of the built-in v-
                    ariables. The result has the base-type and cardinality declared for the variable subject
                    to the type promotion of weighted outcomes. During outcomes processing, values taken from
                    an individual item session can be looked up by prefixing the name of the item variable wi-
                    th the identifier assigned to the item in the assessmentItemRef, separated by a period ch-
                    aracter. For example, to obtain the value of the SCORE variable in the item referred to as
                    Q01 you would use a variable instance with identifier Q01.SCORE. In adaptive tests that c-
                    ontain items that are allowed to be replaced (i.e. that have the withReplacement attribute
                    set to "true"), the same item can be instantiated more than once. In order to access the
                    outcome variable values of each instantiation, a number that denotes the instance's place
                    in the sequence of the item's instantiation is inserted between the item variable identif-
                    ier and the item variable, separated by a period character. For example, to obtain the va-
                    lue of the SCORE variable in the item referred to as Q01 in its second instantiation you
                    would use a variable instance, prefixed by the instantiation sequence number, prefixed by
                    an identifier Q01.2.SCORE. When looking up the value of a response variable it always tak-
                    es the value assigned to it by the candidate's last submission. Unsubmitted responses are
                    not available during expression evaluation. The value of an item variable taken from an i-
                    tem instantiated multiple times from the same assessmentItemRef (through the use of selec-
                    tion withReplacement) is taken from the last instance submitted if submission is simultan-
                    eous, otherwise it is undefined.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="identifier.Variable.Attr" />
                    <xs:attributeGroup ref="weightIdentifier.Variable.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="VariableMapping.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    Variable mappings allow outcome variables declared with the name sourceIdentifier in the
                    corresponding item to be treated as if they were declared with the name targetIdentifier
                    during outcomeProcessing. Use of variable mappings allows more control over the way outco-
                    mes are aggregated when using testVariables.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="sourceIdentifier.VariableMapping.Attr" />
                    <xs:attributeGroup ref="targetIdentifier.VariableMapping.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <xs:complexType name="Weight.Type" abstract="false" mixed="false">
            <xs:annotation>
                <xs:documentation source="documentation">
                    The contribution of an individual item score to an overall test score typically varies fr-
                    om test to test. The score of the item is said to be weighted. Weights are defined as part
                    of each reference to an item (assessmentItemRef) within a test.
                </xs:documentation>
            </xs:annotation>
            <xs:complexContent>
                <xs:extension base="EmptyPrimitiveType.Type">
                    <xs:attributeGroup ref="identifier.Weight.Attr" />
                    <xs:attributeGroup ref="value.Weight.Attr" />
                </xs:extension>
            </xs:complexContent>
        </xs:complexType>

        <!-- ================================================================================================== -->

        <!-- Declaration of the elements (Complex) ************************************************************ -->

        <xs:element name="a" type="A.Type" />

        <xs:element name="abbr" type="HTMLText.Type" />

        <xs:element name="acronym" type="HTMLText.Type" />

        <xs:element name="address" type="HTMLText.Type" />

        <xs:element name="and" type="Logic1toMany.Type" />

        <xs:element name="anyN" type="AnyN.Type" />

        <xs:element name="areaMapping" type="AreaMapping.Type" />

        <xs:element name="assessmentItemRef" type="AssessmentItemRef.Type" />

        <xs:element name="associableHotspot" type="AssociableHotspot.Type" />

        <xs:element name="associateInteraction" type="AssociateInteraction.Type" />

        <xs:element name="b" type="HTMLText.Type" />

        <xs:element name="bdo" type="BDO.Type" />

        <xs:element name="big" type="HTMLText.Type" />

        <xs:element name="blockquote" type="BlockQuote.Type" />

        <xs:element name="br" type="BR.Type" />

        <xs:element name="branchRule" type="BranchRule.Type" />

        <xs:element name="caption" type="Caption.Type" />

        <xs:element name="choiceInteraction" type="ChoiceInteraction.Type" />

        <xs:element name="cite" type="HTMLText.Type" />

        <xs:element name="code" type="HTMLText.Type" />

        <xs:element name="col" type="Col.Type" />

        <xs:element name="colgroup" type="ColGroup.Type" />

        <xs:element name="containerSize" type="LogicSingle.Type" />

        <xs:element name="contains" type="LogicPair.Type" />

        <xs:element name="correctResponse" type="CorrectResponse.Type" />

        <xs:element name="customInteraction" type="CustomInteraction.Type" />

        <xs:element name="customOperator" type="CustomOperator.Type" />

        <xs:element name="dd" type="DD.Type" />

        <xs:element name="defaultValue" type="DefaultValue.Type" />

        <xs:element name="delete" type="LogicPair.Type" />

        <xs:element name="dfn" type="HTMLText.Type" />

        <xs:element name="div" type="Div.Type" />

        <xs:element name="divide" type="LogicPair.Type" />

        <xs:element name="dl" type="DL.Type" />

        <xs:element name="drawingInteraction" type="DrawingInteraction.Type" />

        <xs:element name="dt" type="DT.Type" />

        <xs:element name="durationGTE" type="LogicPair.Type" />

        <xs:element name="durationLT" type="LogicPair.Type" />

        <xs:element name="em" type="HTMLText.Type" />

        <xs:element name="endAttemptInteraction" type="EndAttemptInteraction.Type" />

        <xs:element name="equal" type="Equal.Type" />

        <xs:element name="equalRounded" type="EqualRounded.Type" />

        <xs:element name="extendedTextInteraction" type="ExtendedTextInteraction.Type" />

        <xs:element name="feedbackBlock" type="FeedbackBlock.Type" />

        <xs:element name="feedbackInline" type="FeedbackInline.Type" />

        <xs:element name="fieldValue" type="FieldValue.Type" />

        <xs:element name="gap" type="Gap.Type" />

        <xs:element name="gapImg" type="GapImg.Type" />

        <xs:element name="gapMatchInteraction" type="GapMatchInteraction.Type" />

        <xs:element name="gapText" type="GapText.Type" />

        <xs:element name="gcd" type="Logic1toMany.Type" />

        <xs:element name="graphicAssociateInteraction" type="GraphicAssociateInteraction.Type" />

        <xs:element name="graphicGapMatchInteraction" type="GraphicGapMatchInteraction.Type" />

        <xs:element name="graphicOrderInteraction" type="GraphicOrderInteraction.Type" />

        <xs:element name="gt" type="LogicPair.Type" />

        <xs:element name="gte" type="LogicPair.Type" />

        <xs:element name="h1" type="HTMLText.Type" />

        <xs:element name="h2" type="HTMLText.Type" />

        <xs:element name="h3" type="HTMLText.Type" />

        <xs:element name="h4" type="HTMLText.Type" />

        <xs:element name="h5" type="HTMLText.Type" />

        <xs:element name="h6" type="HTMLText.Type" />

        <xs:element name="hotspotChoice" type="HotspotChoice.Type" />

        <xs:element name="hotspotInteraction" type="HotspotInteraction.Type" />

        <xs:element name="hottext" type="HotText.Type" />

        <xs:element name="hottextInteraction" type="HotTextInteraction.Type" />

        <xs:element name="hr" type="HR.Type" />

        <xs:element name="i" type="HTMLText.Type" />

        <xs:element name="img" type="Img.Type" />

        <xs:element name="index" type="Index.Type" />

        <xs:element name="infoControl" type="InfoControl.Type" />

        <xs:element name="inlineChoice" type="InlineChoice.Type" />

        <xs:element name="inlineChoiceInteraction" type="InlineChoiceInteraction.Type" />

        <xs:element name="inside" type="Inside.Type" />

        <xs:element name="integerDivide" type="LogicPair.Type" />

        <xs:element name="integerModulus" type="LogicPair.Type" />

        <xs:element name="integerToFloat" type="LogicSingle.Type" />

        <xs:element name="interpolationTable" type="InterpolationTable.Type" />

        <xs:element name="isNull" type="LogicSingle.Type" />

        <xs:element name="itemBody" type="ItemBody.Type" />

        <xs:element name="kbd" type="HTMLText.Type" />

        <xs:element name="label" type="Label.Type" />

        <xs:element name="lcm" type="Logic1toMany.Type" />

        <xs:element name="li" type="LI.Type" />

        <xs:element name="lookupOutcomeValue" type="LookupOutcomeValue.Type" />

        <xs:element name="lt" type="LogicPair.Type" />

        <xs:element name="lte" type="LogicPair.Type" />

        <xs:element name="mapping" type="Mapping.Type" />

        <xs:element name="match" type="LogicPair.Type" />

        <xs:element name="matchInteraction" type="MatchInteraction.Type" />

        <xs:element name="matchTable" type="MatchTable.Type" />

        <xs:element name="mathOperator" type="MathOperator.Type" />

        <xs:element name="max" type="Logic1toMany.Type" />

        <xs:element name="mediaInteraction" type="MediaInteraction.Type" />

        <xs:element name="member" type="LogicPair.Type" />

        <xs:element name="min" type="Logic1toMany.Type" />

        <xs:element name="modalFeedback" type="ModalFeedback.Type" />

        <xs:element name="multiple" type="Logic0toMany.Type" />

        <xs:element name="not" type="LogicSingle.Type" />

        <xs:element name="object" type="Object.Type" />

        <xs:element name="ol" type="OUL.Type" />

        <xs:element name="or" type="Logic1toMany.Type" />

        <xs:element name="ordered" type="Logic0toMany.Type" />

        <xs:element name="ordering" type="Ordering.Type" />

        <xs:element name="orderInteraction" type="OrderInteraction.Type" />

        <xs:element name="outcomeCondition" type="OutcomeCondition.Type" />

        <xs:element name="outcomeElse" type="OutcomeElse.Type" />

        <xs:element name="outcomeElseIf" type="OutcomeIf.Type" />

        <xs:element name="outcomeIf" type="OutcomeIf.Type" />

        <xs:element name="outcomeProcessing" type="OutcomeProcessing.Type" />

        <xs:element name="outcomeProcessingFragment" type="OutcomeProcessingFragment.Type" />

        <xs:element name="p" type="HTMLText.Type" />

        <xs:element name="patternMatch" type="PatternMatch.Type" />

        <xs:element name="positionObjectInteraction" type="PositionObjectInteraction.Type" />

        <xs:element name="positionObjectStage" type="PositionObjectStage.Type" />

        <xs:element name="power" type="LogicPair.Type" />

        <xs:element name="pre" type="HTMLText.Type" />

        <xs:element name="preCondition" type="LogicSingle.Type" />

        <xs:element name="product" type="Logic1toMany.Type" />

        <xs:element name="prompt" type="Prompt.Type" />

        <xs:element name="q" type="Q.Type" />

        <xs:element name="random" type="LogicSingle.Type" />

        <xs:element name="repeat" type="Repeat.Type" />

        <xs:element name="responseCondition" type="ResponseCondition.Type" />

        <xs:element name="responseDeclaration" type="ResponseDeclaration.Type" />

        <xs:element name="responseElse" type="ResponseElse.Type" />

        <xs:element name="responseElseIf" type="ResponseIf.Type" />

        <xs:element name="responseIf" type="ResponseIf.Type" />

        <xs:element name="responseProcessingFragment" type="ResponseProcessingFragment.Type" />

        <xs:element name="round" type="LogicSingle.Type" />

        <xs:element name="roundTo" type="RoundTo.Type" />

        <xs:element name="rubricBlock" type="RubricBlock.Type" />

        <xs:element name="samp" type="HTMLText.Type" />

        <xs:element name="selection" type="Selection.Type" />

        <xs:element name="selectPointInteraction" type="SelectPointInteraction.Type" />

        <xs:element name="setCorrectResponse" type="SetValue.Type" />

        <xs:element name="setDefaultValue" type="SetValue.Type" />

        <xs:element name="setOutcomeValue" type="SetValue.Type" />

        <xs:element name="setTemplateValue" type="SetValue.Type" />

        <xs:element name="simpleAssociableChoice" type="SimpleAssociableChoice.Type" />

        <xs:element name="simpleChoice" type="SimpleChoice.Type" />

        <xs:element name="simpleMatchSet" type="SimpleMatchSet.Type" />

        <xs:element name="sliderInteraction" type="SliderInteraction.Type" />

        <xs:element name="small" type="HTMLText.Type" />

        <xs:element name="span" type="HTMLText.Type" />

        <xs:element name="statsOperator" type="StatsOperator.Type" />

        <xs:element name="stimulusBody" type="StimulusBody.Type" />

        <xs:element name="stringMatch" type="StringMatch.Type" />

        <xs:element name="strong" type="HTMLText.Type" />

        <xs:element name="sub" type="HTMLText.Type" />

        <xs:element name="substring" type="Substring.Type" />

        <xs:element name="subtract" type="LogicPair.Type" />

        <xs:element name="sum" type="NumericLogic1toMany.Type" />

        <xs:element name="sup" type="HTMLText.Type" />

        <xs:element name="table" type="Table.Type" />

        <xs:element name="tbody" type="TablePart.Type" />

        <xs:element name="td" type="TDH.Type" />

        <xs:element name="templateBlock" type="TemplateBlock.Type" />

        <xs:element name="templateCondition" type="TemplateCondition.Type" />

        <xs:element name="templateConstraint" type="TemplateConstraint.Type" />

        <xs:element name="templateDeclaration" type="TemplateDeclaration.Type" />

        <xs:element name="templateDefault" type="TemplateDefault.Type" />

        <xs:element name="templateElse" type="TemplateElse.Type" />

        <xs:element name="templateElseIf" type="TemplateIf.Type" />

        <xs:element name="templateIf" type="TemplateIf.Type" />

        <xs:element name="templateInline" type="TemplateInline.Type" />

        <xs:element name="templateProcessing" type="TemplateProcessing.Type" />

        <xs:element name="testFeedback" type="TestFeedback.Type" />

        <xs:element name="testPart" type="TestPart.Type" />

        <xs:element name="textEntryInteraction" type="TextEntryInteraction.Type" />

        <xs:element name="tfoot" type="TablePart.Type" />

        <xs:element name="th" type="TDH.Type" />

        <xs:element name="thead" type="TablePart.Type" />

        <xs:element name="tr" type="TR.Type" />

        <xs:element name="truncate" type="LogicSingle.Type" />

        <xs:element name="tt" type="HTMLText.Type" />

        <xs:element name="ul" type="OUL.Type" />

        <xs:element name="uploadInteraction" type="UploadInteraction.Type" />

        <xs:element name="var" type="HTMLText.Type" />

        <!-- ================================================================================================== -->

        <!-- Declaration of the elements (Derived) ************************************************************ -->

        <xs:element name="areaMapEntry" type="AreaMapEntry.Type" />

        <xs:element name="assessmentSectionRef" type="AssessmentSectionRef.Type" />

        <xs:element name="assessmentStimulusRef" type="AssessmentStimulusRef.Type" />

        <xs:element name="baseValue" type="BaseValue.Type" />

        <xs:element name="correct" type="Correct.Type" />

        <xs:element name="default" type="Default.Type" />

        <xs:element name="interpolationTableEntry" type="InterpolationTableEntry.Type" />

        <xs:element name="itemSessionControl" type="ItemSessionControl.Type" />

        <xs:element name="mapEntry" type="MapEntry.Type" />

        <xs:element name="mapResponse" type="MapResponse.Type" />

        <xs:element name="mapResponsePoint" type="MapResponse.Type" />

        <xs:element name="matchTableEntry" type="MatchTableEntry.Type" />

        <xs:element name="mathConstant" type="MathConstant.Type" />

        <xs:element name="numberCorrect" type="Number.Type" />

        <xs:element name="numberIncorrect" type="Number.Type" />

        <xs:element name="numberPresented" type="Number.Type" />

        <xs:element name="numberResponded" type="Number.Type" />

        <xs:element name="numberSelected" type="Number.Type" />

        <xs:element name="outcomeMaximum" type="OutcomeMinMax.Type" />

        <xs:element name="outcomeMinimum" type="OutcomeMinMax.Type" />

        <xs:element name="param" type="Param.Type" />

        <xs:element name="printedVariable" type="PrintedVariable.Type" />

        <xs:element name="randomFloat" type="RandomFloat.Type" />

        <xs:element name="randomInteger" type="RandomInteger.Type" />

        <xs:element name="stylesheet" type="StyleSheet.Type" />

        <xs:element name="testVariables" type="TestVariables.Type" />

        <xs:element name="timeLimits" type="TimeLimits.Type" />

        <xs:element name="value" type="Value.Type" />

        <xs:element name="variable" type="Variable.Type" />

        <xs:element name="variableMapping" type="VariableMapping.Type" />

        <xs:element name="weight" type="Weight.Type" />

        <!-- ================================================================================================== -->

        <!-- Declaration of the root element(s) *************************************************************** -->

        <xs:element name="assessmentItem" type="AssessmentItem.Type" />
        <xs:element name="assessmentSection" type="AssessmentSection.Type" />
        <xs:element name="assessmentStimulus" type="AssessmentStimulus.Type" />
        <xs:element name="assessmentTest" type="AssessmentTest.Type" />
        <xs:element name="outcomeDeclaration" type="OutcomeDeclaration.Type" />
        <xs:element name="responseProcessing" type="ResponseProcessing.Type" />

        <!-- ================================================================================================== -->

    </xs:schema>

toc | top

# About this Document

Title: | IMS Question and Test Interoperability (QTI): Assessment, Section and Item (ASI) XSD Binding v2.2.2
Editors: | Colin Smythe, IMS Global (UK) Mark McKell, IMS Global (USA)
Co-chairs: | Wilbert Kraan, JISC (UK) Tom Hoffmann, ETS (USA)
Version: | Final 1.0
Version Date: | 27th November, 2017
Status: | IMS Final Release
Summary: | This is the definition of the XML Binding to be used to support the exchange of Assessments (Tests) and Items (Questions). This binding defines the XML Schema Definition (XSD) for validating an XML instance created for the exchange of a Test, Section, Item, Stimulus, Outcome and Response Processing Template. The XSD is derived from the source data model and also uses the IMS profile of UML to support the IMS model driven specification engineering method.
Revision Information: | This document supercedes IMS QTI Assessment, Section and Item (ASI) XSD Binding v2.1. Version 2.2.1: (a) The ARIA attributes using the 'ElementIDList' class have been re-assigned the 'IDREFS' primitiveType and the 'ElementIDList' class has been deleted; (b) The QTI-HTML5v2.2 XSD reference has been changed to QTI-HTML5v2.2.1 XSD; (c) The multiplicity of the 'col' attribute in the 'ColGroup' class has been changed to [0..*]; (d) The schematron rules for the extensions of the 'language' and 'base' characterisics have been corrected to refer to 'xml:lang' and 'xml:base' respectively. Version 2.2.2: Corrections to the Schematron rules to enforce numeric comparisons using the 'number()' function.
Purpose: | This document is made available for adoption by the public community at large.
Document Location: | IMS Public Website (Standards Download): www.imsglobal.org/question

toc | top

## List of Contributors

The following individuals contributed to the development of this document:

Michael Aumock | Pacific Metrics (USA)
Jerome Bogaerts | O.A.T. (Luxemburgh)
Marty Christensen | ACT (USA)
Jason Craft | Pearson (USA)
Gary Driscoll | ETS (USA)
Gaye Fedorachak | ACT (USA)
Greg Gaspard | Pearson (USA)
Mark Hakkinen | ETS (USA)
Regina Hoag | ETS (USA)
Tom Hoffmann | ETS (USA)
Rob Howard | NWEA (USA)
Wilbert Kraan | JISC (UK)
Justin Marks | NWEA (USA)
Phil McClelland | Desire2Learn (Canada)
Mark McKell | IMS Global (USA)
Sue Milne | JISC/CETIS (UK)

Makoto Murata | JEPA (Japan)
Becka Nethers | NWEA (USA)
Padraig O'hiceadha | HMH (UK)
Jason Pelletier | Measured Progress (USA)
Craig Perry | ACT (USA)
Kevin Ptak | Data Recognition Corp (USA)
Michelle Richard | Pearson (USA)
Madeleine Rothberg | WGBH NCAM (USA)
Sharon Secretan | Pearson (USA)
Farhat Siddiqui | ETS (USA)
Colin Smythe | IMS Global (UK)
Joesph St. George | Measured Progress (USA)
Jeremiah Tanner | DRC (USA)
Wyatt VanderStucken | ETS (USA)
Yvonne Winklemann | BPS (Germany)

toc | top

## Revision History

Version No. | Release Date | Comments
--- | --- | ---
Spec 2.2 / Final 1.0 | 1st September, 2015 | The initial final release of the QTIv2.2 specification XSD binding.
Spec 2.2.1 / Final 1.0 | 1st August, 2016 | The changes in this release are: (a) The ARIA attributes using the 'ElementIDList' class have been re-assigned the 'IDREFS' primitiveType and the 'ElementIDList' class has been deleted; (b) The QTI-HTML5v2.2 XSD reference has been changed to QTI-HTML5v2.2.1 XSD; (c) The multiplicity of the 'col' attribute in the 'ColGroup' class has been changed to [0..*]; (d) The schematron rules for the extensions of the 'language' and 'base' characterisics have been corrected to refer to 'xml:lang' and 'xml:base' respectively.
Spec 2.2.2 / Final 1.0 | 27th November, 2017 | The changes made in this release are corrections to the Schematron rules to enforce numeric comparisons using the 'number()' function.

toc | top

IMS Global Learning Consortium, Inc. ("IMS Global") is publishing the information contained in this document ("Specification") for purposes of scientific, experimental, and scholarly collaboration only.

IMS Global makes no warranty or representation regarding the accuracy or completeness of the Specification.

This material is provided on an "As Is" and "As Available" basis.

The Specification is at all times subject to change and revision without notice.

It is your sole responsibility to evaluate the usefulness, accuracy, and completeness of the Specification as it relates to you.

IMS Global would appreciate receiving your comments and suggestions.

Please contact IMS Global through our website at http://www.imsglobal.org.

Please refer to Document Name: IMS Question and Test Interoperability (QTI): Assessment, Section and Item (ASI) XSD Binding v2.2.2

Date: 27th November, 2017

toc | top