<?xml version="1.0" encoding="UTF-8"?> <!-- filename=ims_qtiasiv1p2.xsd --> <!-- Copyright (2) 2002 IMS Global Learning Consortium, Inc. --> <xs:schema targetNamespace="http://www.imsglobal.org/xsd/ims_qtiasiv1p2" xmlns:x="http://www.w3.org/XML/1998/namespace" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.imsglobal.org/xsd/ims_qtiasiv1p2" elementFormDefault="qualified" version="IMS QTI ASI 1.2"> <!-- **************************** --> <!-- ** Inclusions and Imports ** --> <!-- **************************** --> <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/> <!-- ****************** --> <!-- ** Root Element ** --> <!-- ****************** --> <xs:element name="questestinterop" type="questestinteropType"/> <!-- ************************** --> <!-- ** Element Declarations ** --> <!-- ************************** --> <xs:element name="altmaterial" type="altmaterialType"/> <xs:element name="and" type="andType"/> <xs:element name="and_objects" type="and_objectsType"/> <xs:element name="and_selection" type="and_selectionType"/> <xs:element name="and_test" type="and_testType"/> <xs:element name="assessfeedback" type="assessfeedbackType"/> <xs:element name="assessment" type="assessmentType"/> <xs:element name="assessmentcontrol" type="assessmentcontrolType"/> <xs:element name="assessproc_extension" type="assessproc_extensionType"/> <xs:element name="conditionvar" type="conditionvarType"/> <xs:element name="decvar" type="decvarType"/> <xs:element name="displayfeedback" type="displayfeedbackType"/> <xs:element name="duration" type="xs:string"/> <xs:element name="durequal" type="durequalType"/> <xs:element name="durgt" type="durgtType"/> <xs:element name="durgte" type="durgteType"/> <xs:element name="durlt" type="durltType"/> <xs:element name="durlte" type="durlteType"/> <xs:element name="fieldentry" type="xs:string"/> <xs:element name="fieldlabel" type="xs:string"/> <xs:element name="flow" type="flowType"/> <xs:element name="flow_label" type="flow_labelType"/> <xs:element name="flow_mat" type="flow_matType"/> <xs:element name="hint" type="hintType"/> <xs:element name="hintmaterial" type="hintmaterialType"/> <xs:element name="interpretvar" type="interpretvarType"/> <xs:element name="item" type="itemType"/> <xs:element name="itemcontrol" type="itemcontrolType"/> <xs:element name="itemfeedback" type="itemfeedbackType"/> <xs:element name="itemmetadata" type="itemmetadataType"/> <xs:element name="itempostcondition" type="xs:string"/> <xs:element name="itemprecondition" type="xs:string"/> <xs:element name="itemproc_extension" type="itemproc_extensionType"/> <xs:element name="itemref" type="itemrefType"/> <xs:element name="itemrubric" type="itemrubricType"/> <xs:element name="map_input" type="map_inputType"/> <xs:element name="map_output" type="map_outputType"/> <xs:element name="mat_extension" type="mat_extensionType"/> <xs:element name="matapplet" type="matappletType"/> <xs:element name="matapplication" type="matapplicationType"/> <xs:element name="mataudio" type="mataudioType"/> <xs:element name="matbreak" type="matbreakType"/> <xs:element name="matemtext" type="matemtextType"/> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> <xs:element name="matimage" type="matimageType"/> <xs:element name="matref" type="matrefType"/> <xs:element name="mattext" type="mattextType"/> <xs:element name="matvideo" type="matvideoType"/> <xs:element name="not" type="notType"/> <xs:element name="not_objects" type="not_objectsType"/> <xs:element name="not_selection" type="not_selectionType"/> <xs:element name="not_test" type="not_testType"/> <xs:element name="objectbank" type="objectbankType"/> <xs:element name="objectives" type="objectivesType"/> <xs:element name="objects_condition" type="objects_conditionType"/> <xs:element name="objects_parameter" type="objects_parameterType"/> <xs:element name="objectscond_extension" type="xs:string"/> <xs:element name="or" type="orType"/> <xs:element name="or_objects" type="or_objectsType"/> <xs:element name="or_selection" type="or_selectionType"/> <xs:element name="or_test" type="or_testType"/> <xs:element name="order" type="orderType"/> <xs:element name="order_extension" type="order_extensionType"/> <xs:element name="other" type="xs:string"/> <xs:element name="outcomes" type="outcomesType"/> <xs:element name="outcomes_feedback_test" type="outcomes_feedback_testType"/> <xs:element name="outcomes_metadata" type="outcomes_metadataType"/> <xs:element name="outcomes_processing" type="outcomes_processingType"/> <xs:element name="presentation" type="presentationType"/> <xs:element name="presentation_material" type="presentation_materialType"/> <xs:element name="processing_parameter" type="processing_parameterType"/> <xs:element name="qmd_computerscored" type="xs:string"/> <xs:element name="qmd_feedbackpermitted" type="xs:string"/> <xs:element name="qmd_hintspermitted" type="xs:string"/> <xs:element name="qmd_itemtype" type="xs:string"/> <xs:element name="qmd_levelofdifficulty" type="xs:string"/> <xs:element name="qmd_material" type="xs:string"/> <xs:element name="qmd_maximumscore" type="xs:string"/> <xs:element name="qmd_renderingtype" type="xs:string"/> <xs:element name="qmd_responsetype" type="xs:string"/> <xs:element name="qmd_scoringpermitted" type="xs:string"/> <xs:element name="qmd_solutionspermitted" type="xs:string"/> <xs:element name="qmd_status" type="xs:string"/> <xs:element name="qmd_timedependence" type="xs:string"/> <xs:element name="qmd_timelimit" type="xs:string"/> <xs:element name="qmd_toolvendor" type="xs:string"/> <xs:element name="qmd_topic" type="xs:string"/> <xs:element name="qmd_typeofsolution" type="xs:string"/> <xs:element name="qmd_weighting" type="xs:string"/> <xs:element name="qticomment" type="qticommentType"/> <xs:element name="qtimetadata" type="qtimetadataType"/> <xs:element name="qtimetadatafield" type="qtimetadatafieldType"/> <xs:element name="reference" type="referenceType"/> <xs:element name="render_choice" type="render_choiceType"/> <xs:element name="render_fib" type="render_fibType"/> <xs:element name="render_hotspot" type="render_hotspotType"/> <xs:element name="render_slider" type="render_sliderType"/> <xs:element name="respcond_extension" type="respcond_extensionType"/> <xs:element name="respcondition" type="respconditionType"/> <xs:element name="render_extension" type="render_extensionType"/> <xs:element name="response_extension" type="response_extensionType"/> <xs:element name="response_grp" type="response_grpType"/> <xs:element name="response_labelType" type="response_labelType"/> <xs:element name="response_lid" type="response_lidType"/> <xs:element name="response_na" type="response_naType"/> <xs:element name="response_num" type="response_numType"/> <xs:element name="response_str" type="response_strType"/> <xs:element name="response_xy" type="response_xyType"/> <xs:element name="resprocessing" type="resprocessingType"/> <xs:element name="rubric" type="rubricType"/> <xs:element name="section" type="sectionType"/> <xs:element name="sectioncontrol" type="sectioncontrolType"/> <xs:element name="sectionfeedback" type="sectionfeedbackType"/> <xs:element name="sectionproc_extension" type="sectionproc_extensionType"/> <xs:element name="sectionpostcondition" type="xs:string"/> <xs:element name="sectionprecondition" type="xs:string"/> <xs:element name="sectionref" type="sectionrefType"/> <xs:element name="selection" type="selectionType"/> <xs:element name="selection_extension" type="selection_extensionType"/> <xs:element name="selection_metadata" type="selection_metadataType"/> <xs:element name="selection_number" type="xs:string"/> <xs:element name="selection_ordering" type="selection_orderingType"/> <xs:element name="sequence_parameter" type="sequence_parameterType"/> <xs:element name="setvar" type="setvarType"/> <xs:element name="solution" type="solutionType"/> <xs:element name="solutionmaterial" type="solutionmaterialType"/> <xs:element name="sourcebank_ref" type="xs:string"/> <xs:element name="test_variable" type="test_variableType"/> <xs:element name="unanswered" type="unansweredType"/> <xs:element name="var_extension" type="var_extensionType"/> <xs:element name="varequal" type="varequalType"/> <xs:element name="vargt" type="vargtType"/> <xs:element name="vargte" type="vargteType"/> <xs:element name="variable_test" type="variable_testType"/> <xs:element name="varinside" type="varinsideType"/> <xs:element name="varlt" type="varltType"/> <xs:element name="varlte" type="varlteType"/> <xs:element name="varsubset" type="varsubsetType"/> <xs:element name="varsubstring" type="varsubstringType"/> <xs:element name="vocabulary" type="vocabularyType"/> <!-- ******************************* --> <!-- ** Complex Type Declarations ** --> <!-- ******************************* --> <!-- ***************** --> <!-- ** altmaterial ** --> <!-- ***************** --> <xs:complexType name="altmaterialType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:choice maxOccurs="unbounded"> <xs:element name="mattext" type="mattextType"/> <xs:element name="matemtext" type="matemtextType"/> <xs:element name="matimage" type="matimageType"/> <xs:element name="mataudio" type="mataudioType"/> <xs:element name="matvideo" type="matvideoType"/> <xs:element name="matapplet" type="matappletType"/> <xs:element name="matapplication" type="matapplicationType"/> <xs:element name="matref" type="matrefType"/> <xs:element ref="matbreak"/> <xs:element ref="mat_extension"/> </xs:choice> </xs:sequence> <xs:attribute ref="x:lang"/> </xs:complexType> <!-- ********* --> <!-- ** and ** --> <!-- ********* --> <xs:complexType name="andType"> <xs:choice maxOccurs="unbounded"> <xs:element name="not" type="notType"/> <xs:element name="and" type="andType"/> <xs:element name="or" type="orType"/> <xs:element name="unanswered" type="unansweredType"/> <xs:element ref="other"/> <xs:element name="varequal" type="varequalType"/> <xs:element name="varlt" type="varltType"/> <xs:element name="varlte" type="varlteType"/> <xs:element name="vargt" type="vargtType"/> <xs:element name="vargte" type="vargteType"/> <xs:element name="varsubset" type="varsubsetType"/> <xs:element name="varinside" type="varinsideType"/> <xs:element name="varsubstring" type="varsubstringType"/> <xs:element name="durequal" type="durequalType"/> <xs:element name="durlt" type="durltType"/> <xs:element name="durlte" type="durlteType"/> <xs:element name="durgt" type="durgtType"/> <xs:element name="durgte" type="durgteType"/> </xs:choice> </xs:complexType> <!-- ***************** --> <!-- ** and_objects ** --> <!-- ***************** --> <xs:complexType name="and_objectsType"> <xs:choice maxOccurs="unbounded"> <xs:element name="outcomes_metadata" type="outcomes_metadataType"/> <xs:element name="and_objects" type="and_objectsType"/> <xs:element name="or_objects" type="or_objectsType"/> <xs:element name="not_objects" type="not_objectsType"/> </xs:choice> </xs:complexType> <!-- ******************* --> <!-- ** and_selection ** --> <!-- ******************* --> <xs:complexType name="and_selectionType"> <xs:choice maxOccurs="unbounded"> <xs:element name="selection_metadata" type="selection_metadataType"/> <xs:element name="and_selection" type="and_selectionType"/> <xs:element name="or_selection" type="or_selectionType"/> <xs:element name="not_selection" type="not_selectionType"/> </xs:choice> </xs:complexType> <!-- ************** --> <!-- ** and_test ** --> <!-- ************** --> <xs:complexType name="and_testType"> <xs:choice maxOccurs="unbounded"> <xs:element name="variable_test" type="variable_testType"/> <xs:element name="and_test" type="and_testType"/> <xs:element name="or_test" type="or_testType"/> <xs:element name="not_test" type="not_testType"/> </xs:choice> </xs:complexType> <!-- ******************** --> <!-- ** assessfeedback ** --> <!-- ******************** --> <xs:complexType name="assessfeedbackType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:choice> <xs:element name="material" type="materialType" maxOccurs="unbounded"/> <xs:element name="flow_mat" type="flow_matType" maxOccurs="unbounded"/> </xs:choice> </xs:sequence> <xs:attribute name="view" default="All"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="All"/> <xs:enumeration value="Administrator"/> <xs:enumeration value="AdminAuthority"/> <xs:enumeration value="Assessor"/> <xs:enumeration value="Author"/> <xs:enumeration value="Candidate"/> <xs:enumeration value="InvigilatorProctor"/> <xs:enumeration value="Psychometrician"/> <xs:enumeration value="Scorer"/> <xs:enumeration value="Tutor"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="ident" type="xs:string" use="required"/> <xs:attribute name="title" type="xs:string"/> </xs:complexType> <!-- **************** --> <!-- ** assessment ** --> <!-- **************** --> <xs:complexType name="assessmentType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:element ref="duration" minOccurs="0"/> <xs:element name="qtimetadata" type="qtimetadataType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="objectives" type="objectivesType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="assessmentcontrol" type="assessmentcontrolType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="rubric" type="rubricType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="presentation_material" type="presentation_materialType" minOccurs="0"/> <xs:element name="outcomes_processing" type="outcomes_processingType" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="assessproc_extension" minOccurs="0"/> <xs:element name="assessfeedback" type="assessfeedbackType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="selection_ordering" type="selection_orderingType" minOccurs="0"/> <xs:element name="reference" type="referenceType" minOccurs="0"/> <xs:choice maxOccurs="unbounded"> <xs:element name="sectionref" type="sectionrefType"/> <xs:element name="section" type="sectionType"/> </xs:choice> </xs:sequence> <xs:attribute name="ident" type="xs:string" use="required"/> <xs:attribute name="title" type="xs:string"/> <xs:attribute ref="x:lang"/> </xs:complexType> <!-- *********************** --> <!-- ** assessmentcontrol ** --> <!-- *********************** --> <xs:complexType name="assessmentcontrolType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> </xs:sequence> <xs:attribute name="hintswitch" default="Yes"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="solutionswitch" default="Yes"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="view" default="All"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="All"/> <xs:enumeration value="Administrator"/> <xs:enumeration value="AdminAuthority"/> <xs:enumeration value="Assessor"/> <xs:enumeration value="Author"/> <xs:enumeration value="Candidate"/> <xs:enumeration value="InvigilatorProctor"/> <xs:enumeration value="Psychometrician"/> <xs:enumeration value="Scorer"/> <xs:enumeration value="Tutor"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="feedbackswitch" default="Yes"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> <!-- ************************** --> <!-- ** assessproc_extension ** --> <!-- ************************** --> <xs:complexType name="assessproc_extensionType" mixed="true"> <xs:sequence> <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:anyAttribute processContents="lax"/> </xs:complexType> <!-- ****************** --> <!-- ** conditionvar ** --> <!-- ****************** --> <xs:complexType name="conditionvarType"> <xs:choice maxOccurs="unbounded"> <xs:element name="not" type="notType"/> <xs:element name="and" type="andType"/> <xs:element name="or" type="orType"/> <xs:element name="unanswered" type="unansweredType"/> <xs:element ref="other"/> <xs:element name="varequal" type="varequalType"/> <xs:element name="varlt" type="varltType"/> <xs:element name="varlte" type="varlteType"/> <xs:element name="vargt" type="vargtType"/> <xs:element name="vargte" type="vargteType"/> <xs:element name="varsubset" type="varsubsetType"/> <xs:element name="varinside" type="varinsideType"/> <xs:element name="varsubstring" type="varsubstringType"/> <xs:element name="durequal" type="durequalType"/> <xs:element name="durlt" type="durltType"/> <xs:element name="durlte" type="durlteType"/> <xs:element name="durgt" type="durgtType"/> <xs:element name="durgte" type="durgteType"/> <xs:element ref="var_extension"/> </xs:choice> </xs:complexType> <!-- ************ --> <!-- ** decvar ** --> <!-- ************ --> <xs:complexType name="decvarType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="varname" type="xs:string" default="SCORE"/> <xs:attribute name="vartype" default="Integer"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Integer"/> <xs:enumeration value="String"/> <xs:enumeration value="Decimal"/> <xs:enumeration value="Scientific"/> <xs:enumeration value="Boolean"/> <xs:enumeration value="Enumerated"/> <xs:enumeration value="Set"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="defaultval" type="xs:string"/> <xs:attribute name="minvalue" type="xs:string"/> <xs:attribute name="maxvalue" type="xs:string"/> <xs:attribute name="members" type="xs:string"/> <xs:attribute name="cutvalue" type="xs:string"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ********************* --> <!-- ** displayfeedback ** --> <!-- ********************* --> <xs:complexType name="displayfeedbackType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="feedbacktype" default="Response"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Response"/> <xs:enumeration value="Solution"/> <xs:enumeration value="Hint"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="linkrefid" type="xs:string" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ************** --> <!-- ** durequal ** --> <!-- ************** --> <xs:complexType name="durequalType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="index" type="xs:string"/> <xs:attribute name="respident" type="xs:string" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- *********** --> <!-- ** durgt ** --> <!-- *********** --> <xs:complexType name="durgtType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="index" type="xs:string"/> <xs:attribute name="respident" type="xs:string" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ************ --> <!-- ** durgte ** --> <!-- ************ --> <xs:complexType name="durgteType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="index" type="xs:string"/> <xs:attribute name="respident" type="xs:string" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- *********** --> <!-- ** durlt ** --> <!-- *********** --> <xs:complexType name="durltType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="index" type="xs:string"/> <xs:attribute name="respident" type="xs:string" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ************ --> <!-- ** durlte ** --> <!-- ************ --> <xs:complexType name="durlteType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="index" type="xs:string"/> <xs:attribute name="respident" type="xs:string" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ********** --> <!-- ** flow ** --> <!-- ********** --> <xs:complexType name="flowType"> <xs:choice maxOccurs="unbounded"> <xs:element name="flow" type="flowType"/> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> <xs:element name="response_lid" type="response_lidType"/> <xs:element name="response_xy" type="response_xyType"/> <xs:element name="response_str" type="response_strType"/> <xs:element name="response_num" type="response_numType"/> <xs:element name="response_grp" type="response_grpType"/> <xs:element ref="response_extension"/> </xs:choice> <xs:attribute name="class" type="xs:string" default="Block"/> </xs:complexType> <!-- **************** --> <!-- ** flow_label ** --> <!-- **************** --> <xs:complexType name="flow_labelType"> <xs:choice maxOccurs="unbounded"> <xs:element name="flow_label" type="flow_labelType"/> <xs:element name="response_label" type="response_labelType"/> </xs:choice> <xs:attribute name="class" type="xs:string" default="Block"/> </xs:complexType> <!-- ************** --> <!-- ** flow_mat ** --> <!-- ************** --> <xs:complexType name="flow_matType"> <xs:choice maxOccurs="unbounded"> <xs:element name="flow_mat" type="flow_matType"/> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> </xs:choice> <xs:attribute name="class" type="xs:string" default="Block"/> </xs:complexType> <!-- ********** --> <!-- ** hint ** --> <!-- ********** --> <xs:complexType name="hintType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:element name="hintmaterial" type="hintmaterialType" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute name="feedbackstyle" default="Complete"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Complete"/> <xs:enumeration value="Incremental"/> <xs:enumeration value="Multilevel"/> <xs:enumeration value="Proprietary"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> <!-- ****************** --> <!-- ** hintmaterial ** --> <!-- ****************** --> <xs:complexType name="hintmaterialType"> <xs:choice> <xs:element name="material" type="materialType" maxOccurs="unbounded"/> <xs:element name="flow_mat" type="flow_matType" maxOccurs="unbounded"/> </xs:choice> </xs:complexType> <!-- ****************** --> <!-- ** interpretvar ** --> <!-- ****************** --> <xs:complexType name="interpretvarType"> <xs:choice> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> </xs:choice> <xs:attribute name="view" default="All"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="All"/> <xs:enumeration value="Administrator"/> <xs:enumeration value="AdminAuthority"/> <xs:enumeration value="Assessor"/> <xs:enumeration value="Author"/> <xs:enumeration value="Candidate"/> <xs:enumeration value="InvigilatorProctor"/> <xs:enumeration value="Psychometrician"/> <xs:enumeration value="Scorer"/> <xs:enumeration value="Tutor"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="varname" type="xs:string" default="SCORE"/> </xs:complexType> <!-- ********** --> <!-- ** item ** --> <!-- ********** --> <xs:complexType name="itemType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:element ref="duration" minOccurs="0"/> <xs:element name="itemmetadata" type="itemmetadataType" minOccurs="0"/> <xs:element name="objectives" type="objectivesType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="itemcontrol" type="itemcontrolType" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="itemprecondition" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="itempostcondition" minOccurs="0" maxOccurs="unbounded"/> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element name="itemrubric" type="itemrubricType"/> <xs:element name="rubric" type="rubricType"/> </xs:choice> <xs:element name="presentation" type="presentationType" minOccurs="0"/> <xs:element name="resprocessing" type="resprocessingType" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="itemproc_extension" minOccurs="0"/> <xs:element name="itemfeedback" type="itemfeedbackType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="reference" type="referenceType" minOccurs="0"/> </xs:sequence> <xs:attribute name="maxattempts" type="xs:string"/> <xs:attribute name="label" type="xs:string"/> <xs:attribute name="ident" type="xs:string" use="required"/> <xs:attribute name="title" type="xs:string"/> <xs:attribute ref="x:lang"/> </xs:complexType> <!-- ***************** --> <!-- ** itemcontrol ** --> <!-- ***************** --> <xs:complexType name="itemcontrolType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> </xs:sequence> <xs:attribute name="feedbackswitch" default="Yes"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="hintswitch" default="Yes"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="solutionswitch" default="Yes"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="view" default="All"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="All"/> <xs:enumeration value="Administrator"/> <xs:enumeration value="AdminAuthority"/> <xs:enumeration value="Assessor"/> <xs:enumeration value="Author"/> <xs:enumeration value="Candidate"/> <xs:enumeration value="InvigilatorProctor"/> <xs:enumeration value="Psychometrician"/> <xs:enumeration value="Scorer"/> <xs:enumeration value="Tutor"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> <!-- ****************** --> <!-- ** itemfeedback ** --> <!-- ****************** --> <xs:complexType name="itemfeedbackType"> <xs:choice maxOccurs="unbounded"> <xs:choice> <xs:element name="flow_mat" type="flow_matType"/> <xs:element name="material" type="materialType"/> </xs:choice> <xs:element name="solution" type="solutionType"/> <xs:element name="hint" type="hintType"/> </xs:choice> <xs:attribute name="view" default="All"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="All"/> <xs:enumeration value="Administrator"/> <xs:enumeration value="AdminAuthority"/> <xs:enumeration value="Assessor"/> <xs:enumeration value="Author"/> <xs:enumeration value="Candidate"/> <xs:enumeration value="InvigilatorProctor"/> <xs:enumeration value="Psychometrician"/> <xs:enumeration value="Scorer"/> <xs:enumeration value="Tutor"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="ident" type="xs:string" use="required"/> <xs:attribute name="title" type="xs:string"/> </xs:complexType> <!-- ****************** --> <!-- ** itemmetadata ** --> <!-- ****************** --> <xs:complexType name="itemmetadataType"> <xs:sequence> <xs:element name="qtimetadata" type="qtimetadataType" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="qmd_computerscored" minOccurs="0"/> <xs:element ref="qmd_feedbackpermitted" minOccurs="0"/> <xs:element ref="qmd_hintspermitted" minOccurs="0"/> <xs:element ref="qmd_itemtype" minOccurs="0"/> <xs:element ref="qmd_levelofdifficulty" minOccurs="0"/> <xs:element ref="qmd_maximumscore" minOccurs="0"/> <xs:element ref="qmd_renderingtype" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="qmd_responsetype" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="qmd_scoringpermitted" minOccurs="0"/> <xs:element ref="qmd_solutionspermitted" minOccurs="0"/> <xs:element ref="qmd_status" minOccurs="0"/> <xs:element ref="qmd_timedependence" minOccurs="0"/> <xs:element ref="qmd_timelimit" minOccurs="0"/> <xs:element ref="qmd_toolvendor" minOccurs="0"/> <xs:element ref="qmd_topic" minOccurs="0"/> <xs:element ref="qmd_weighting" minOccurs="0"/> <xs:element ref="qmd_material" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="qmd_typeofsolution" minOccurs="0"/> </xs:sequence> </xs:complexType> <!-- ************************ --> <!-- ** itemproc_extension ** --> <!-- ************************ --> <xs:complexType name="itemproc_extensionType" mixed="true"> <xs:sequence> <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:anyAttribute processContents="lax"/> </xs:complexType> <!-- ************* --> <!-- ** itemref ** --> <!-- ************* --> <xs:complexType name="itemrefType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="linkrefid" type="xs:string" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- **************** --> <!-- ** itemrubric ** --> <!-- **************** --> <xs:complexType name="itemrubricType"> <xs:sequence> <xs:element name="material" type="materialType"/> </xs:sequence> <xs:attribute name="view" default="All"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="All"/> <xs:enumeration value="Administrator"/> <xs:enumeration value="AdminAuthority"/> <xs:enumeration value="Assessor"/> <xs:enumeration value="Author"/> <xs:enumeration value="Candidate"/> <xs:enumeration value="InvigilatorProctor"/> <xs:enumeration value="Psychometrician"/> <xs:enumeration value="Scorer"/> <xs:enumeration value="Tutor"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> <!-- *************** --> <!-- ** map_input ** --> <!-- *************** --> <xs:complexType name="map_inputType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="varname" type="xs:string" default="SCORE"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- **************** --> <!-- ** map_output ** --> <!-- **************** --> <xs:complexType name="map_outputType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="varname" type="xs:string" default="SCORE"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ******************* --> <!-- ** mat_extension ** --> <!-- ******************* --> <xs:complexType name="mat_extensionType" mixed="true"> <xs:sequence> <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:anyAttribute processContents="lax"/> </xs:complexType> <!-- *************** --> <!-- ** matapplet ** --> <!-- *************** --> <xs:complexType name="matappletType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="label" type="xs:string"/> <xs:attribute name="uri" type="xs:string"/> <xs:attribute name="y0" type="xs:string"/> <xs:attribute name="height" type="xs:string"/> <xs:attribute name="width" type="xs:string"/> <xs:attribute name="x0" type="xs:string"/> <xs:attribute name="embedded" type="xs:string" default="base64"/> <xs:attribute name="entityref" type="xs:ENTITY"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ******************** --> <!-- ** matapplication ** --> <!-- ******************** --> <xs:complexType name="matapplicationType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="apptype" type="xs:string"/> <xs:attribute name="label" type="xs:string"/> <xs:attribute name="uri" type="xs:string"/> <xs:attribute name="embedded" type="xs:string" default="base64"/> <xs:attribute name="entityref" type="xs:ENTITY"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ************** --> <!-- ** mataudio ** --> <!-- ************** --> <xs:complexType name="mataudioType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="audiotype" type="xs:string" default="audio/base"/> <xs:attribute name="label" type="xs:string"/> <xs:attribute name="uri" type="xs:string"/> <xs:attribute name="embedded" type="xs:string" default="base64"/> <xs:attribute name="entityref" type="xs:ENTITY"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ************** --> <!-- ** matbreak ** --> <!-- ************** --> <xs:complexType name="matbreakType"/> <!-- *************** --> <!-- ** matemtext ** --> <!-- *************** --> <xs:complexType name="matemtextType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="texttype" type="xs:string" default="text/plain"/> <xs:attribute name="label" type="xs:string"/> <xs:attribute name="charset" type="xs:string" default="ascii-us"/> <xs:attribute name="uri" type="xs:string"/> <xs:attribute ref="x:space" default="default"/> <xs:attribute ref="x:lang"/> <xs:attribute name="entityref" type="xs:ENTITY"/> <xs:attribute name="width" type="xs:string"/> <xs:attribute name="height" type="xs:string"/> <xs:attribute name="y0" type="xs:string"/> <xs:attribute name="x0" type="xs:string"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ************** --> <!-- ** material ** --> <!-- ************** --> <xs:complexType name="materialType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:choice maxOccurs="unbounded"> <xs:element name="mattext" type="mattextType"/> <xs:element name="matemtext" type="matemtextType"/> <xs:element name="matimage" type="matimageType"/> <xs:element name="mataudio" type="mataudioType"/> <xs:element name="matvideo" type="matvideoType"/> <xs:element name="matapplet" type="matappletType"/> <xs:element name="matapplication" type="matapplicationType"/> <xs:element name="matref" type="matrefType"/> <xs:element ref="matbreak"/> <xs:element ref="mat_extension"/> </xs:choice> <xs:element name="altmaterial" type="altmaterialType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute name="label" type="xs:string"/> <xs:attribute ref="x:lang"/> </xs:complexType> <!-- ****************** --> <!-- ** material_ref ** --> <!-- ****************** --> <xs:complexType name="material_refType"> <xs:attribute name="linkrefid" type="xs:string" use="required"/> </xs:complexType> <!-- ************** --> <!-- ** matimage ** --> <!-- ************** --> <xs:complexType name="matimageType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="imagtype" type="xs:string" default="image/jpeg"/> <xs:attribute name="label" type="xs:string"/> <xs:attribute name="height" type="xs:string"/> <xs:attribute name="uri" type="xs:string"/> <xs:attribute name="embedded" type="xs:string" default="base64"/> <xs:attribute name="width" type="xs:string"/> <xs:attribute name="y0" type="xs:string"/> <xs:attribute name="x0" type="xs:string"/> <xs:attribute name="entityref" type="xs:ENTITY"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ************ --> <!-- ** matref ** --> <!-- ************ --> <xs:complexType name="matrefType"> <xs:attribute name="linkrefid" type="xs:string" use="required"/> </xs:complexType> <!-- ************* --> <!-- ** mattext ** --> <!-- ************* --> <xs:complexType name="mattextType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="texttype" type="xs:string" default="text/plain"/> <xs:attribute name="label" type="xs:string"/> <xs:attribute name="charset" type="xs:string" default="ascii-us"/> <xs:attribute name="uri" type="xs:string"/> <xs:attribute ref="x:space" default="default"/> <xs:attribute ref="x:lang"/> <xs:attribute name="entityref" type="xs:ENTITY"/> <xs:attribute name="width" type="xs:string"/> <xs:attribute name="height" type="xs:string"/> <xs:attribute name="y0" type="xs:string"/> <xs:attribute name="x0" type="xs:string"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ************** --> <!-- ** matvideo ** --> <!-- ************** --> <xs:complexType name="matvideoType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="videotype" type="xs:string" default="video/avi"/> <xs:attribute name="label" type="xs:string"/> <xs:attribute name="uri" type="xs:string"/> <xs:attribute name="width" type="xs:string"/> <xs:attribute name="height" type="xs:string"/> <xs:attribute name="y0" type="xs:string"/> <xs:attribute name="x0" type="xs:string"/> <xs:attribute name="embedded" type="xs:string" default="base64"/> <xs:attribute name="entityref" type="xs:ENTITY"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ********* --> <!-- ** not ** --> <!-- ********* --> <xs:complexType name="notType"> <xs:choice> <xs:element name="and" type="andType"/> <xs:element name="or" type="orType"/> <xs:element name="not" type="notType"/> <xs:element name="unanswered" type="unansweredType"/> <xs:element ref="other"/> <xs:element name="varequal" type="varequalType"/> <xs:element name="varlt" type="varltType"/> <xs:element name="varlte" type="varlteType"/> <xs:element name="vargt" type="vargtType"/> <xs:element name="vargte" type="vargteType"/> <xs:element name="varsubset" type="varsubsetType"/> <xs:element name="varinside" type="varinsideType"/> <xs:element name="varsubstring" type="varsubstringType"/> <xs:element name="durequal" type="durequalType"/> <xs:element name="durlt" type="durltType"/> <xs:element name="durlte" type="durlteType"/> <xs:element name="durgt" type="durgtType"/> <xs:element name="durgte" type="durgteType"/> </xs:choice> </xs:complexType> <!-- ***************** --> <!-- ** not_objects ** --> <!-- ***************** --> <xs:complexType name="not_objectsType"> <xs:choice> <xs:element name="outcomes_metadata" type="outcomes_metadataType"/> <xs:element name="and_objects" type="and_objectsType"/> <xs:element name="or_objects" type="or_objectsType"/> <xs:element name="not_objects" type="not_objectsType"/> </xs:choice> </xs:complexType> <!-- ******************* --> <!-- ** not_selection ** --> <!-- ******************* --> <xs:complexType name="not_selectionType"> <xs:choice> <xs:element name="selection_metadata" type="selection_metadataType"/> <xs:element name="and_selection" type="and_selectionType"/> <xs:element name="or_selection" type="or_selectionType"/> <xs:element name="not_selection" type="not_selectionType"/> </xs:choice> </xs:complexType> <!-- ************** --> <!-- ** not_test ** --> <!-- ************** --> <xs:complexType name="not_testType"> <xs:choice> <xs:element name="variable_test" type="variable_testType"/> <xs:element name="and_test" type="and_testType"/> <xs:element name="or_test" type="or_testType"/> <xs:element name="not_test" type="not_testType"/> </xs:choice> </xs:complexType> <!-- **************** --> <!-- ** objectbank ** --> <!-- **************** --> <xs:complexType name="objectbankType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:element name="qtimetadata" type="qtimetadataType" minOccurs="0" maxOccurs="unbounded"/> <xs:choice maxOccurs="unbounded"> <xs:element name="section" type="sectionType"/> <xs:element name="item" type="itemType"/> </xs:choice> </xs:sequence> <xs:attribute name="ident" type="xs:string" use="required"/> </xs:complexType> <!-- **************** --> <!-- ** objectives ** --> <!-- **************** --> <xs:complexType name="objectivesType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:choice> <xs:element name="material" type="materialType" maxOccurs="unbounded"/> <xs:element name="flow_mat" type="flow_matType" maxOccurs="unbounded"/> </xs:choice> </xs:sequence> <xs:attribute name="view" default="All"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="All"/> <xs:enumeration value="Administrator"/> <xs:enumeration value="AdminAuthority"/> <xs:enumeration value="Assessor"/> <xs:enumeration value="Author"/> <xs:enumeration value="Candidate"/> <xs:enumeration value="InvigilatorProctor"/> <xs:enumeration value="Psychometrician"/> <xs:enumeration value="Scorer"/> <xs:enumeration value="Tutor"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> <!-- *********************** --> <!-- ** objects_condition ** --> <!-- *********************** --> <xs:complexType name="objects_conditionType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:choice minOccurs="0"> <xs:element name="outcomes_metadata" type="outcomes_metadataType"/> <xs:element name="and_objects" type="and_objectsType"/> <xs:element name="or_objects" type="or_objectsType"/> <xs:element name="not_objects" type="not_objectsType"/> </xs:choice> <xs:element name="objects_parameter" type="objects_parameterType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="map_input" type="map_inputType" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="objectscond_extension" minOccurs="0"/> </xs:sequence> </xs:complexType> <!-- *********************** --> <!-- ** objects_parameter ** --> <!-- *********************** --> <xs:complexType name="objects_parameterType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="pname" type="xs:string" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ******** --> <!-- ** or ** --> <!-- ******** --> <xs:complexType name="orType"> <xs:choice maxOccurs="unbounded"> <xs:element name="not" type="notType"/> <xs:element name="and" type="andType"/> <xs:element name="or" type="orType"/> <xs:element name="unanswered" type="unansweredType"/> <xs:element ref="other"/> <xs:element name="varequal" type="varequalType"/> <xs:element name="varlt" type="varltType"/> <xs:element name="varlte" type="varlteType"/> <xs:element name="vargt" type="vargtType"/> <xs:element name="vargte" type="vargteType"/> <xs:element name="varsubset" type="varsubsetType"/> <xs:element name="varinside" type="varinsideType"/> <xs:element name="varsubstring" type="varsubstringType"/> <xs:element name="durequal" type="durequalType"/> <xs:element name="durlt" type="durltType"/> <xs:element name="durlte" type="durlteType"/> <xs:element name="durgt" type="durgtType"/> <xs:element name="durgte" type="durgteType"/> </xs:choice> </xs:complexType> <!-- **************** --> <!-- ** or_objects ** --> <!-- **************** --> <xs:complexType name="or_objectsType"> <xs:choice maxOccurs="unbounded"> <xs:element name="outcomes_metadata" type="outcomes_metadataType"/> <xs:element name="and_objects" type="and_objectsType"/> <xs:element name="or_objects" type="or_objectsType"/> <xs:element name="not_objects" type="not_objectsType"/> </xs:choice> </xs:complexType> <!-- ****************** --> <!-- ** or_selection ** --> <!-- ****************** --> <xs:complexType name="or_selectionType"> <xs:choice maxOccurs="unbounded"> <xs:element name="selection_metadata" type="selection_metadataType"/> <xs:element name="and_selection" type="and_selectionType"/> <xs:element name="or_selection" type="or_selectionType"/> <xs:element name="not_selection" type="not_selectionType"/> </xs:choice> </xs:complexType> <!-- ************* --> <!-- ** or_test ** --> <!-- ************* --> <xs:complexType name="or_testType"> <xs:choice maxOccurs="unbounded"> <xs:element name="variable_test" type="variable_testType"/> <xs:element name="and_test" type="and_testType"/> <xs:element name="or_test" type="or_testType"/> <xs:element name="not_test" type="not_testType"/> </xs:choice> </xs:complexType> <!-- *********** --> <!-- ** order ** --> <!-- *********** --> <xs:complexType name="orderType"> <xs:sequence> <xs:element ref="order_extension" minOccurs="0"/> </xs:sequence> <xs:attribute name="order_type" type="xs:string" use="required"/> </xs:complexType> <!-- ********************* --> <!-- ** order_extension ** --> <!-- ********************* --> <xs:complexType name="order_extensionType" mixed="true"> <xs:sequence> <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:anyAttribute processContents="lax"/> </xs:complexType> <!-- ************** --> <!-- ** outcomes ** --> <!-- ************** --> <xs:complexType name="outcomesType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:sequence maxOccurs="unbounded"> <xs:element name="decvar" type="decvarType"/> <xs:element name="interpretvar" type="interpretvarType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:sequence> </xs:complexType> <!-- **************************** --> <!-- ** outcomes_feedback_test ** --> <!-- **************************** --> <xs:complexType name="outcomes_feedback_testType"> <xs:sequence> <xs:element name="test_variable" type="test_variableType"/> <xs:element name="displayfeedback" type="displayfeedbackType" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute name="title" type="xs:string"/> </xs:complexType> <!-- *********************** --> <!-- ** outcomes_metadata ** --> <!-- *********************** --> <xs:complexType name="outcomes_metadataType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="mdname" type="xs:string" use="required"/> <xs:attribute name="mdoperator" use="required"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="EQ"/> <xs:enumeration value="NEQ"/> <xs:enumeration value="LT"/> <xs:enumeration value="LTE"/> <xs:enumeration value="GT"/> <xs:enumeration value="GTE"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ************************* --> <!-- ** outcomes_processing ** --> <!-- ************************* --> <xs:complexType name="outcomes_processingType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:element name="outcomes" type="outcomesType"/> <xs:element name="objects_condition" type="objects_conditionType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="processing_parameter" type="processing_parameterType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="map_output" type="map_outputType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="outcomes_feedback_test" type="outcomes_feedback_testType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute name="scoremodel" type="xs:string"/> </xs:complexType> <!-- ****************** --> <!-- ** presentation ** --> <!-- ****************** --> <xs:complexType name="presentationType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:choice> <xs:element name="flow" type="flowType"/> <xs:choice maxOccurs="unbounded"> <xs:element name="material" type="materialType"/> <xs:element name="response_lid" type="response_lidType"/> <xs:element name="response_xy" type="response_xyType"/> <xs:element name="response_str" type="response_strType"/> <xs:element name="response_num" type="response_numType"/> <xs:element name="response_grp" type="response_grpType"/> <xs:element ref="response_extension"/> </xs:choice> </xs:choice> </xs:sequence> <xs:attribute name="label" type="xs:string"/> <xs:attribute ref="x:lang"/> <xs:attribute name="y0" type="xs:string"/> <xs:attribute name="x0" type="xs:string"/> <xs:attribute name="width" type="xs:string"/> <xs:attribute name="height" type="xs:string"/> </xs:complexType> <!-- *************************** --> <!-- ** presentation_material ** --> <!-- *************************** --> <xs:complexType name="presentation_materialType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:element name="flow_mat" type="flow_matType" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <!-- ************************** --> <!-- ** processing_parameter ** --> <!-- ************************** --> <xs:complexType name="processing_parameterType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="pname" type="xs:string" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- **************** --> <!-- ** qticomment ** --> <!-- **************** --> <xs:complexType name="qticommentType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute ref="x:lang"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ***************** --> <!-- ** qtimetadata ** --> <!-- ***************** --> <xs:complexType name="qtimetadataType"> <xs:sequence> <xs:element name="vocabulary" type="vocabularyType" minOccurs="0"/> <xs:element name="qtimetadatafield" type="qtimetadatafieldType" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <!-- ********************** --> <!-- ** qtimetadatafield ** --> <!-- ********************** --> <xs:complexType name="qtimetadatafieldType"> <xs:sequence> <xs:element ref="fieldlabel"/> <xs:element ref="fieldentry"/> </xs:sequence> <xs:attribute ref="x:lang"/> </xs:complexType> <!-- ********************* --> <!-- ** questestinterop ** --> <!-- ********************* --> <xs:complexType name="questestinteropType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:choice> <xs:element name="objectbank" type="objectbankType"/> <xs:element name="assessment" type="assessmentType"/> <xs:choice maxOccurs="unbounded"> <xs:element name="section" type="sectionType"/> <xs:element name="item" type="itemType"/> </xs:choice> </xs:choice> </xs:sequence> </xs:complexType> <!-- *************** --> <!-- ** reference ** --> <!-- *************** --> <xs:complexType name="referenceType"> <xs:choice maxOccurs="unbounded"> <xs:element name="qticomment" type="qticommentType"/> <xs:element name="material" type="materialType"/> <xs:element name="mattext" type="mattextType"/> <xs:element name="matemtext" type="matemtextType"/> <xs:element name="matimage" type="matimageType"/> <xs:element name="mataudio" type="mataudioType"/> <xs:element name="matvideo" type="matvideoType"/> <xs:element name="matapplet" type="matappletType"/> <xs:element name="matapplication" type="matapplicationType"/> <xs:element ref="matbreak"/> <xs:element ref="mat_extension"/> </xs:choice> </xs:complexType> <!-- ******************* --> <!-- ** render_choice ** --> <!-- ******************* --> <xs:complexType name="render_choiceType"> <xs:sequence> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> <xs:element name="response_label" type="response_labelType"/> <xs:element name="flow_label" type="flow_labelType"/> </xs:choice> <xs:element ref="response_na" minOccurs="0"/> </xs:sequence> <xs:attribute name="shuffle" default="No"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="minnumber" type="xs:string"/> <xs:attribute name="maxnumber" type="xs:string"/> </xs:complexType> <!-- ********************** --> <!-- ** render_extension ** --> <!-- ********************** --> <xs:complexType name="render_extensionType" mixed="true"> <xs:sequence> <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:anyAttribute processContents="lax"/> </xs:complexType> <!-- **************** --> <!-- ** render_fib ** --> <!-- **************** --> <xs:complexType name="render_fibType"> <xs:sequence> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> <xs:element name="response_label" type="response_labelType"/> <xs:element name="flow_label" type="flow_labelType"/> </xs:choice> <xs:element ref="response_na" minOccurs="0"/> </xs:sequence> <xs:attribute name="encoding" type="xs:string" default="UTF_8"/> <xs:attribute name="fibtype" default="String"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="String"/> <xs:enumeration value="Integer"/> <xs:enumeration value="Decimal"/> <xs:enumeration value="Scientific"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="rows" type="xs:string"/> <xs:attribute name="maxchars" type="xs:string"/> <xs:attribute name="prompt"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Box"/> <xs:enumeration value="Dashline"/> <xs:enumeration value="Asterisk"/> <xs:enumeration value="Underline"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="columns" type="xs:string"/> <xs:attribute name="charset" type="xs:string" default="ascii-us"/> <xs:attribute name="maxnumber" type="xs:string"/> <xs:attribute name="minnumber" type="xs:string"/> </xs:complexType> <!-- ******************** --> <!-- ** render_hotspot ** --> <!-- ******************** --> <xs:complexType name="render_hotspotType"> <xs:sequence> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> <xs:element name="response_label" type="response_labelType"/> <xs:element name="flow_label" type="flow_labelType"/> </xs:choice> <xs:element ref="response_na" minOccurs="0"/> </xs:sequence> <xs:attribute name="maxnumber" type="xs:string"/> <xs:attribute name="minnumber" type="xs:string"/> <xs:attribute name="showdraw" default="No"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> <!-- ******************* --> <!-- ** render_slider ** --> <!-- ******************* --> <xs:complexType name="render_sliderType"> <xs:sequence> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> <xs:element name="response_label" type="response_labelType"/> <xs:element name="flow_label" type="flow_labelType"/> </xs:choice> <xs:element ref="response_na" minOccurs="0"/> </xs:sequence> <xs:attribute name="orientation" default="Horizontal"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Horizontal"/> <xs:enumeration value="Vertical"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="lowerbound" type="xs:string" use="required"/> <xs:attribute name="upperbound" type="xs:string" use="required"/> <xs:attribute name="step" type="xs:string"/> <xs:attribute name="startval" type="xs:string"/> <xs:attribute name="steplabel" default="No"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="maxnumber" type="xs:string"/> <xs:attribute name="minnumber" type="xs:string"/> </xs:complexType> <!-- ************************ --> <!-- ** respcond_extension ** --> <!-- ************************ --> <xs:complexType name="respcond_extensionType" mixed="true"> <xs:sequence> <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:anyAttribute processContents="lax"/> </xs:complexType> <!-- ******************* --> <!-- ** respcondition ** --> <!-- ******************* --> <xs:complexType name="respconditionType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:element name="conditionvar" type="conditionvarType"/> <xs:element name="setvar" type="setvarType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="displayfeedback" type="displayfeedbackType" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="respcond_extension" minOccurs="0"/> </xs:sequence> <xs:attribute name="continue" default="No"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="title" type="xs:string"/> </xs:complexType> <!-- ************************ --> <!-- ** response_extension ** --> <!-- ************************ --> <xs:complexType name="response_extensionType" mixed="true"> <xs:sequence> <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:anyAttribute processContents="lax"/> </xs:complexType> <!-- ****************** --> <!-- ** response_grp ** --> <!-- ****************** --> <xs:complexType name="response_grpType"> <xs:sequence> <xs:choice minOccurs="0"> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> </xs:choice> <xs:choice> <xs:element name="render_choice" type="render_choiceType"/> <xs:element name="render_hotspot" type="render_hotspotType"/> <xs:element name="render_slider" type="render_sliderType"/> <xs:element name="render_fib" type="render_fibType"/> <xs:element ref="render_extension"/> </xs:choice> <xs:choice minOccurs="0"> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> </xs:choice> </xs:sequence> <xs:attribute name="rcardinality" default="Single"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Single"/> <xs:enumeration value="Multiple"/> <xs:enumeration value="Ordered"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="ident" type="xs:string" use="required"/> <xs:attribute name="rtiming" default="No"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> <!-- ************************ --> <!-- ** response_lableType ** --> <!-- ************************ --> <xs:complexType name="response_labelType" mixed="true"> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element name="qticomment" type="qticommentType"/> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> <xs:element name="flow_mat" type="flow_matType"/> </xs:choice> <xs:attribute name="rshuffle" default="Yes"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="rarea" default="Ellipse"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Ellipse"/> <xs:enumeration value="Rectangle"/> <xs:enumeration value="Bounded"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="rrange" default="Exact"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Exact"/> <xs:enumeration value="Range"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="labelrefid" type="xs:string"/> <xs:attribute name="ident" type="xs:string" use="required"/> <xs:attribute name="match_group" type="xs:string"/> <xs:attribute name="match_max" type="xs:string"/> </xs:complexType> <!-- ****************** --> <!-- ** response_lid ** --> <!-- ****************** --> <xs:complexType name="response_lidType"> <xs:sequence> <xs:choice minOccurs="0"> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> </xs:choice> <xs:choice> <xs:element name="render_choice" type="render_choiceType"/> <xs:element name="render_hotspot" type="render_hotspotType"/> <xs:element name="render_slider" type="render_sliderType"/> <xs:element name="render_fib" type="render_fibType"/> <xs:element ref="render_extension"/> </xs:choice> <xs:choice minOccurs="0"> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> </xs:choice> </xs:sequence> <xs:attribute name="rcardinality" default="Single"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Single"/> <xs:enumeration value="Multiple"/> <xs:enumeration value="Ordered"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="rtiming" default="No"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="ident" type="xs:string" use="required"/> </xs:complexType> <!-- ***************** --> <!-- ** response_na ** --> <!-- ***************** --> <xs:complexType name="response_naType"/> <!-- ****************** --> <!-- ** response_num ** --> <!-- ****************** --> <xs:complexType name="response_numType"> <xs:sequence> <xs:choice minOccurs="0"> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> </xs:choice> <xs:choice> <xs:element name="render_choice" type="render_choiceType"/> <xs:element name="render_hotspot" type="render_hotspotType"/> <xs:element name="render_slider" type="render_sliderType"/> <xs:element name="render_fib" type="render_fibType"/> <xs:element ref="render_extension"/> </xs:choice> <xs:choice minOccurs="0"> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> </xs:choice> </xs:sequence> <xs:attribute name="numtype" default="Integer"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Integer"/> <xs:enumeration value="Decimal"/> <xs:enumeration value="Scientific"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="rcardinality" default="Single"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Single"/> <xs:enumeration value="Multiple"/> <xs:enumeration value="Ordered"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="ident" type="xs:string" use="required"/> <xs:attribute name="rtiming" default="No"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> <!-- ****************** --> <!-- ** response_str ** --> <!-- ****************** --> <xs:complexType name="response_strType"> <xs:sequence> <xs:choice minOccurs="0"> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> </xs:choice> <xs:choice> <xs:element name="render_choice" type="render_choiceType"/> <xs:element name="render_hotspot" type="render_hotspotType"/> <xs:element name="render_slider" type="render_sliderType"/> <xs:element name="render_fib" type="render_fibType"/> <xs:element ref="render_extension"/> </xs:choice> <xs:choice minOccurs="0"> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> </xs:choice> </xs:sequence> <xs:attribute name="rcardinality" default="Single"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Single"/> <xs:enumeration value="Multiple"/> <xs:enumeration value="Ordered"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="ident" type="xs:string" use="required"/> <xs:attribute name="rtiming" default="No"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> <!-- ***************** --> <!-- ** response_xy ** --> <!-- ***************** --> <xs:complexType name="response_xyType"> <xs:sequence> <xs:choice minOccurs="0"> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> </xs:choice> <xs:choice> <xs:element name="render_choice" type="render_choiceType"/> <xs:element name="render_hotspot" type="render_hotspotType"/> <xs:element name="render_slider" type="render_sliderType"/> <xs:element name="render_fib" type="render_fibType"/> <xs:element ref="render_extension"/> </xs:choice> <xs:choice minOccurs="0"> <xs:element name="material" type="materialType"/> <xs:element name="material_ref" type="material_refType"/> </xs:choice> </xs:sequence> <xs:attribute name="rcardinality" default="Single"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Single"/> <xs:enumeration value="Multiple"/> <xs:enumeration value="Ordered"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="rtiming" default="No"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="ident" type="xs:string" use="required"/> </xs:complexType> <!-- ******************* --> <!-- ** resprocessing ** --> <!-- ******************* --> <xs:complexType name="resprocessingType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:element name="outcomes" type="outcomesType"/> <xs:choice maxOccurs="unbounded"> <xs:element name="respcondition" type="respconditionType"/> <xs:element ref="itemproc_extension"/> </xs:choice> </xs:sequence> <xs:attribute name="scoremodel" type="xs:string"/> </xs:complexType> <!-- ************ --> <!-- ** rubric ** --> <!-- ************ --> <xs:complexType name="rubricType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:choice> <xs:element name="material" type="materialType" maxOccurs="unbounded"/> <xs:element name="flow_mat" type="flow_matType" maxOccurs="unbounded"/> </xs:choice> </xs:sequence> <xs:attribute name="view" default="All"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="All"/> <xs:enumeration value="Administrator"/> <xs:enumeration value="AdminAuthority"/> <xs:enumeration value="Assessor"/> <xs:enumeration value="Author"/> <xs:enumeration value="Candidate"/> <xs:enumeration value="InvigilatorProctor"/> <xs:enumeration value="Psychometrician"/> <xs:enumeration value="Scorer"/> <xs:enumeration value="Tutor"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> <!-- ************* --> <!-- ** section ** --> <!-- ************* --> <xs:complexType name="sectionType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:element ref="duration" minOccurs="0"/> <xs:element name="qtimetadata" type="qtimetadataType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="objectives" type="objectivesType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="sectioncontrol" type="sectioncontrolType" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="sectionprecondition" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="sectionpostcondition" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="rubric" type="rubricType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="presentation_material" type="presentation_materialType" minOccurs="0"/> <xs:element name="outcomes_processing" type="outcomes_processingType" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="sectionproc_extension" minOccurs="0"/> <xs:element name="sectionfeedback" type="sectionfeedbackType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="selection_ordering" type="selection_orderingType" minOccurs="0"/> <xs:element name="reference" type="referenceType" minOccurs="0"/> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element name="itemref" type="itemrefType"/> <xs:element name="item" type="itemType"/> <xs:element name="sectionref" type="sectionrefType"/> <xs:element name="section" type="sectionType"/> </xs:choice> </xs:sequence> <xs:attribute name="ident" type="xs:string" use="required"/> <xs:attribute name="title" type="xs:string"/> <xs:attribute ref="x:lang"/> </xs:complexType> <!-- ******************** --> <!-- ** sectioncontrol ** --> <!-- ******************** --> <xs:complexType name="sectioncontrolType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> </xs:sequence> <xs:attribute name="feedbackswitch" default="Yes"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="hintswitch" default="Yes"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="solutionswitch" default="Yes"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="view" default="All"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="All"/> <xs:enumeration value="Administrator"/> <xs:enumeration value="AdminAuthority"/> <xs:enumeration value="Assessor"/> <xs:enumeration value="Author"/> <xs:enumeration value="Candidate"/> <xs:enumeration value="InvigilatorProctor"/> <xs:enumeration value="Psychometrician"/> <xs:enumeration value="Scorer"/> <xs:enumeration value="Tutor"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> <!-- ********************* --> <!-- ** sectionfeedback ** --> <!-- ********************* --> <xs:complexType name="sectionfeedbackType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:choice> <xs:element name="material" type="materialType" maxOccurs="unbounded"/> <xs:element name="flow_mat" type="flow_matType" maxOccurs="unbounded"/> </xs:choice> </xs:sequence> <xs:attribute name="view" default="All"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="All"/> <xs:enumeration value="Administrator"/> <xs:enumeration value="AdminAuthority"/> <xs:enumeration value="Assessor"/> <xs:enumeration value="Author"/> <xs:enumeration value="Candidate"/> <xs:enumeration value="InvigilatorProctor"/> <xs:enumeration value="Psychometrician"/> <xs:enumeration value="Scorer"/> <xs:enumeration value="Tutor"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="ident" type="xs:string" use="required"/> <xs:attribute name="title" type="xs:string"/> </xs:complexType> <!-- *************************** --> <!-- ** sectionproc_extension ** --> <!-- *************************** --> <xs:complexType name="sectionproc_extensionType" mixed="true"> <xs:sequence> <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:anyAttribute processContents="lax"/> </xs:complexType> <!-- **************** --> <!-- ** sectionref ** --> <!-- **************** --> <xs:complexType name="sectionrefType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="linkrefid" type="xs:string" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- *************** --> <!-- ** selection ** --> <!-- *************** --> <xs:complexType name="selectionType"> <xs:sequence> <xs:element ref="sourcebank_ref" minOccurs="0"/> <xs:element ref="selection_number" minOccurs="0"/> <xs:element name="selection_metadata" type="selection_metadataType" minOccurs="0"/> <xs:choice minOccurs="0"> <xs:element name="and_selection" type="and_selectionType"/> <xs:element name="or_selection" type="or_selectionType"/> <xs:element name="not_selection" type="not_selectionType"/> <xs:element ref="selection_extension"/> </xs:choice> </xs:sequence> </xs:complexType> <!-- ************************* --> <!-- ** selection_extension ** --> <!-- ************************* --> <xs:complexType name="selection_extensionType" mixed="true"> <xs:sequence> <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:anyAttribute processContents="lax"/> </xs:complexType> <!-- ************************ --> <!-- ** selection_metadata ** --> <!-- ************************ --> <xs:complexType name="selection_metadataType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="mdname" type="xs:string" use="required"/> <xs:attribute name="mdoperator" use="required"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="EQ"/> <xs:enumeration value="NEQ"/> <xs:enumeration value="LT"/> <xs:enumeration value="LTE"/> <xs:enumeration value="GT"/> <xs:enumeration value="GTE"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ************************ --> <!-- ** selection_ordering ** --> <!-- ************************ --> <xs:complexType name="selection_orderingType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:element name="sequence_parameter" type="sequence_parameterType" minOccurs="0"/> <xs:element name="selection" type="selectionType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="order" type="orderType" minOccurs="0"/> </xs:sequence> <xs:attribute name="sequence_type" type="xs:string"/> </xs:complexType> <!-- ************************ --> <!-- ** sequence_parameter ** --> <!-- ************************ --> <xs:complexType name="sequence_parameterType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="pname" type="xs:string" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ************ --> <!-- ** setvar ** --> <!-- ************ --> <xs:complexType name="setvarType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="varname" type="xs:string" default="SCORE"/> <xs:attribute name="action" default="Set"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Set"/> <xs:enumeration value="Add"/> <xs:enumeration value="Subtract"/> <xs:enumeration value="Multiply"/> <xs:enumeration value="Divide"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ************** --> <!-- ** solution ** --> <!-- ************** --> <xs:complexType name="solutionType"> <xs:sequence> <xs:element name="qticomment" type="qticommentType" minOccurs="0"/> <xs:element name="solutionmaterial" type="solutionmaterialType" maxOccurs="unbounded"/> </xs:sequence> <xs:attribute name="feedbackstyle" default="Complete"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Complete"/> <xs:enumeration value="Incremental"/> <xs:enumeration value="Multilevel"/> <xs:enumeration value="Proprietary"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> <!-- ********************** --> <!-- ** solutionmaterial ** --> <!-- ********************** --> <xs:complexType name="solutionmaterialType"> <xs:choice> <xs:element name="material" type="materialType" maxOccurs="unbounded"/> <xs:element name="flow_mat" type="flow_matType" maxOccurs="unbounded"/> </xs:choice> </xs:complexType> <!-- ******************* --> <!-- ** test_variable ** --> <!-- ******************* --> <xs:complexType name="test_variableType"> <xs:choice> <xs:element name="variable_test" type="variable_testType"/> <xs:element name="and_test" type="and_testType"/> <xs:element name="or_test" type="or_testType"/> <xs:element name="not_test" type="not_testType"/> </xs:choice> </xs:complexType> <!-- **************** --> <!-- ** unanswered ** --> <!-- **************** --> <xs:complexType name="unansweredType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="respident" type="xs:string" use="required"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ******************* --> <!-- ** var_extension ** --> <!-- ******************* --> <xs:complexType name="var_extensionType" mixed="true"> <xs:sequence> <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> <xs:anyAttribute processContents="lax"/> </xs:complexType> <!-- ************** --> <!-- ** varequal ** --> <!-- ************** --> <xs:complexType name="varequalType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="case" default="No"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="respident" type="xs:string" use="required"/> <xs:attribute name="index" type="xs:string"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- *********** --> <!-- ** vargt ** --> <!-- *********** --> <xs:complexType name="vargtType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="respident" type="xs:string" use="required"/> <xs:attribute name="index" type="xs:string"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ************ --> <!-- ** vargte ** --> <!-- ************ --> <xs:complexType name="vargteType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="respident" type="xs:string" use="required"/> <xs:attribute name="index" type="xs:string"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ******************* --> <!-- ** variable_test ** --> <!-- ******************* --> <xs:complexType name="variable_testType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="varname" type="xs:string" default="SCORE"/> <xs:attribute name="testoperator" use="required"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="EQ"/> <xs:enumeration value="NEQ"/> <xs:enumeration value="LT"/> <xs:enumeration value="LTE"/> <xs:enumeration value="GT"/> <xs:enumeration value="GTE"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- *************** --> <!-- ** varinside ** --> <!-- *************** --> <xs:complexType name="varinsideType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="areatype" use="required"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Ellipse"/> <xs:enumeration value="Rectangle"/> <xs:enumeration value="Bounded"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="respident" type="xs:string" use="required"/> <xs:attribute name="index" type="xs:string"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- *********** --> <!-- ** varlt ** --> <!-- *********** --> <xs:complexType name="varltType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="respident" type="xs:string" use="required"/> <xs:attribute name="index" type="xs:string"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ************ --> <!-- ** varlte ** --> <!-- ************ --> <xs:complexType name="varlteType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="respident" type="xs:string" use="required"/> <xs:attribute name="index" type="xs:string"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- *************** --> <!-- ** varsubset ** --> <!-- *************** --> <xs:complexType name="varsubsetType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="respident" type="xs:string" use="required"/> <xs:attribute name="setmatch" default="Exact"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Exact"/> <xs:enumeration value="Partial"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="index" type="xs:string"/> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- ****************** --> <!-- ** varsubstring ** --> <!-- ****************** --> <xs:complexType name="varsubstringType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="index" type="xs:string"/> <xs:attribute name="respident" type="xs:string" use="required"/> <xs:attribute name="case" default="No"> <xs:simpleType> <xs:restriction base="xs:NMTOKEN"> <xs:enumeration value="Yes"/> <xs:enumeration value="No"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:extension> </xs:simpleContent> </xs:complexType> <!-- **************** --> <!-- ** vocabulary ** --> <!-- **************** --> <xs:complexType name="vocabularyType"> <xs:simpleContent> <xs:extension base="xs:string"> <xs:attribute name="uri" type="xs:string"/> <xs:attribute name="entityref" type="xs:ENTITY"/> <xs:attribute name="vocab_type" type="xs:string"/> </xs:extension> </xs:simpleContent> </xs:complexType> </xs:schema>