QTI Specification
Notes from the implementation guide
Assessment Items
The main purpose of the QTI specifiation is to define an information model and associated binding that can be used to represent and exchange assessment items. For the purposes of QTI, an item is a set of interactions (possibly empty) collected together with any supporting material and an optional set of rules for converting the candidate’s response into assessment outcomes.
There’s a wide range of possibilities here from a one line question and response box to a whole test with instructions, context material, and a large number of questions. QTI is only appropriate for the first of these.
To determine if multiple interactions belong in a single assessmentItem
(a composite item), think whether they can stand alone. If yes, then maybe implement them as separate items that share a piece of stimulus material.
Think about how easy it is for the student to keep track of the state of the item. If it requires scrolling a winow just to see all the interactions, it may be better rewritten as several smaller related items.
Here’s a simple, single choice multi-select example:
<assessmentItem xsi:schemaLocation="http://www.imsglobal.org/xsd/imsqti_v2p2 http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqti_v2p2p2.xsd" identifier="choice" title="Unattended Luggage" adaptive="false" timeDependent="false">
<responseDeclaration identifier="RESPONSE" cardinality="single" baseType="identifier">
<correctResponse>
<value>ChoiceA</value>
</correctResponse>
</responseDeclaration>
<outcomeDeclaration identifier="SCORE" cardinality="single" baseType="float">
<defaultValue>
<value>0</value>
</defaultValue>
</outcomeDeclaration>
<itemBody>
<p>Look at the text in the picture.</p>
<p>
<img src="images/sign.png" alt="NEVER LEAVE LUGGAGE UNATTENDED"/>
</p>
<choiceInteraction responseIdentifier="RESPONSE" shuffle="false" maxChoices="1">
<prompt>What does it say?</prompt>
<simpleChoice identifier="ChoiceA">You must stay with your luggage at all times.</simpleChoice>
<simpleChoice identifier="ChoiceB">Do not let someone else look after your luggage.</simpleChoice>
<simpleChoice identifier="ChoiceC">Remember your luggage when you leave.</simpleChoice>
</choiceInteraction>
</itemBody>
<responseProcessing template="http://www.imsglobal.org/question/qti_v2p2/rptemplates/match_correct"/>
</assessmentItem>
Some points to note here:
You can see the
ResponseDeclaration
at the top of the item. It has an identifier, which must be referenced later in thechoiceInteraction
to pair response and interaction.It specified up front the cardinality of the response (single), and that the values of the corresponding identifier attributes in the
simpleChoice
elements will be the possible values of the response.The outcome is a single score, with a default score of 0.
The item is scored using a standard response processing template, match correct, which looks like this:
<responseProcessing xsi:schemaLocation="http://www.imsglobal.org/xsd/imsqti_v2p2 http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqti_v2p2.xsd">
<responseCondition>
<responseIf>
<match>
<variable identifier="RESPONSE"/>
<correct identifier="RESPONSE"/>
</match>
<setOutcomeValue identifier="SCORE">
<baseValue baseType="float">1</baseValue>
</setOutcomeValue>
</responseIf>
<responseElse>
<setOutcomeValue identifier="SCORE">
<baseValue baseType="float">0</baseValue>
</setOutcomeValue>
</responseElse>
</responseCondition>
</responseProcessing>