Associate Interaction (QTI)
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.
The relevant classes are:
Data Model

Examples

<assessmentItem xsi:schemaLocation="http://www.imsglobal.org/xsd/imsqti_v2p2 http://www.imsglobal.org/xsd/qti/qtiv2p2/imsqti_v2p2p2.xsd" identifier="associate" title="Shakespearian Rivals" adaptive="false" timeDependent="false">
<responseDeclaration identifier="RESPONSE" cardinality="multiple" baseType="pair">
<correctResponse>
<value>A P</value>
<value>C M</value>
<value>D L</value>
</correctResponse>
<mapping defaultValue="0">
<mapEntry mapKey="A P" mappedValue="2"/>
<mapEntry mapKey="C M" mappedValue="1"/>
<mapEntry mapKey="D L" mappedValue="1"/>
</mapping>
</responseDeclaration>
<outcomeDeclaration identifier="SCORE" cardinality="single" baseType="float"/>
<itemBody>
<associateInteraction responseIdentifier="RESPONSE" shuffle="true" maxAssociations="3">
<prompt>
Hidden in this list of characters from famous Shakespeare plays are three pairs of rivals. Can you match each character to his adversary?
</prompt>
<simpleAssociableChoice identifier="A" matchMax="1">Antonio</simpleAssociableChoice>
<simpleAssociableChoice identifier="C" matchMax="1">Capulet</simpleAssociableChoice>
<simpleAssociableChoice identifier="D" matchMax="1">Demetrius</simpleAssociableChoice>
<simpleAssociableChoice identifier="L" matchMax="1">Lysander</simpleAssociableChoice>
<simpleAssociableChoice identifier="M" matchMax="1">Montague</simpleAssociableChoice>
<simpleAssociableChoice identifier="P" matchMax="1">Prospero</simpleAssociableChoice>
</associateInteraction>
</itemBody>
<responseProcessing template="http://www.imsglobal.org/question/qti_v2p2/rptemplates/map_response"/>
</assessmentItem>
The candidate’s response is declared to have pair because the task involves pairing up the choices.
The maxAssociations attribute on associateInteraction controls the maximum number of pairings the candidate is allowed to make overall.
Individually, each choice has a matchMax attribute that controls how many pairings it can be part of.
The number of associations that can be made in an associateInteraction is therefore constrained by two methods - in this case they have the same overall effect but this needn’t be the case.
The associations created by the candidate are not directed, the pair base-type is an undirected pair so when comparing responses “A P” would be treated as a match for “P A” - the distinction has no meaning to the interaction even though the physical process used by the candidate might be directional, for example, drawing a line between the choices.