This is a subpage of http://wiki.oasis-open.org/dita/LearningSubcommittee. See the terms of use there.
This is a working page of a design in progress.
Learning Assessment Interactions
Below is the working design for a basic set of DITA assessment interactions.
This design supports the following six interactions:
- True - false
- Single select multiple choice (one correct answer)
- Multiple select multiple choice (two or more correct answers)
- Sequencing
- Matching
- Hotspot
The interactions are defined as a DITA domain, and made available in the lcInteractions element in learningAssessmentbody.
Because the interactions are defined as a DITA domain, however, they can be made available for use in other topic types, if that is desirable.
The six interactions
lcTrueFalse
- title (optional)
- lcQuestion
- lcAsset (optional)
- lcQuestionOptions
- lcQuestionOption (one or more)
- lcOptionContent
- lcCorrectResponse (optional)
- lcFeedback (optional)
- lcQuestionOption (one or more)
- lcFeedbackIncorrect (optional)
- lcFeedbackCorrect (optional)
lcSingleSelect
- title (optional)
- lcQuestion
- lcAsset (optional)
- lcQuestionOptions
- lcQuestionOption (one or more)
- lcOptionContent
- lcCorrectResponse (optional)
- lcFeedback (optional)
- lcQuestionOption (one or more)
- lcFeedbackIncorrect (optional)
- lcFeedbackCorrect (optional)
lcMultipleSelect
- title (optional)
- lcQuestion
- lcAsset (optional)
- lcQuestionOptions
- lcQuestionOption (one or more)
- lcOptionContent
- lcCorrectResponse (optional)
- lcFeedback (optional)
- lcQuestionOption (one or more)
- lcFeedbackIncorrect (optional)
- lcFeedbackCorrect (optional)
lcSequencing
- title (optional)
- lcQuestion
- lcAsset (optional)
- lcSequenceOptions
- lcSequenceOption (one or more)
- lcOptionContent
- lcSequence
- lcSequenceOption (one or more)
- lcFeedbackIncorrect (optional)
- lcFeedbackCorrect (optional)
lcMatching
- title (optional)
- lcQuestion
- lcAsset (optional)
- lcMatchTable
- lcMatchingHeader (optional)
- lcItem, lcMatchingItem
- lcMatchingPair (one or more)
- lcItem, lcMatchingItem
- lcMatchingHeader (optional)
- lcFeedbackIncorrect (optional)
- lcFeedbackCorrect (optional)
lcHotspot
- title (optional)
- lcQuestion
- lcHotspotMap
- image
- lcArea
- shape
- coords
- xref (optional)
- lcCorrectResponse (optional)
- lcFeedback (optional)
- lcFeedbackIncorrect (optional)
- lcFeedbackCorrect (optional)
Sample interactions in a learningAssessment topic
learningAssessment intro
<learningAssessment id="testAssess"> <title>Certification Test</title> <shortdesc>Pass this test, and you are a certified genius.</shortdesc> <learningAssessmentbody> <lcIntro>Here's your test, folks. Good luck!</lcIntro> <lcInteraction>
True-false interaction
<!--True - False Interaction -->
<lcTrueFalse id="tf1">
<title>True - False sun rising</title>
<lcQuestion>On Earth, the sun rises in the West and sets in the East.</lcQuestion>
<lcQuestionOptions>
<lcQuestionOption>
<lcOptionContent>True</lcOptionContent>
<lcFeedback>No, look to the East.</lcFeedback>
</lcQuestionOption>
<lcQuestionOption>
<lcOptionContent>False</lcOptionContent>
<lcCorrectResponse/>
<lcFeedback>Yes, look to the East.</lcFeedback>
</lcQuestionOption>
</lcQuestionOptions>
</lcTrueFalse>
Single-select interaction
<!--Single select Interaction -->
<lcSingleSelect id="singleselect">
<title>Multiple Choice - IEEE standards trivia</title>
<lcQuestion>Which one of the listed standards committees is responsible for
developing the token ring specification?</lcQuestion>
<lcQuestionOptions>
<lcQuestionOption>
<lcOptionContent>IEEE 802.3</lcOptionContent>
<lcFeedback>Sorry. A little low.</lcFeedback>
</lcQuestionOption>
<lcQuestionOption>
<lcOptionContent>IEEE 802.5</lcOptionContent>
<lcCorrectResponse/>
<lcFeedback>That's the one.</lcFeedback>
</lcQuestionOption>
<lcQuestionOption>
<lcOptionContent>IEEE 802.6</lcOptionContent>
<lcFeedback>Nope. Too high.</lcFeedback>
</lcQuestionOption>
<lcQuestionOption>
<lcOptionContent>IEEE 802.11</lcOptionContent>
<lcFeedback>Nope. Way too high.</lcFeedback>
</lcQuestionOption>
</lcQuestionOptions>
</lcSingleSelect>
Multiple select Interaction
<!--Multiple select Interaction -->
<lcMultipleSelect id="ms1">
<title>Finding Major League Baseball logos</title>
<lcQuestion>Which one of the following is a logo of a Major League Baseball
team? (You may choose more than one.)</lcQuestion>
<lcQuestionOptions>
<lcQuestionOption id="A">
<lcOptionContent>
<image href="logo1.gif"/>
</lcOptionContent>
<lcCorrectResponse/>
<lcFeedback>Yes, that's one.</lcFeedback>
</lcQuestionOption>
<lcQuestionOption id="B">
<lcOptionContent>
<image href="logo2.gif"/>
</lcOptionContent>
<lcCorrectResponse/>
<lcFeedback>Yes, that's one.</lcFeedback>
</lcQuestionOption>
<lcQuestionOption id="C">
<lcOptionContent>
<image href="logo3.gif"/>
</lcOptionContent>
<lcFeedback>No, not that one. Sorry!</lcFeedback>
</lcQuestionOption>
<lcQuestionOption id="D">
<lcOptionContent>
<image href="logo4.gif"/>
</lcOptionContent>
<lcCorrectResponse/>
<lcFeedback>Yes, that's one.</lcFeedback>
</lcQuestionOption>
</lcQuestionOptions>
</lcMultipleSelect>
Sequencing Interaction
<!--Sequencing Interaction -->
<lcSequencing id="sequencing">
<title>Sequencing City Populations in the U.S.</title>
<lcQuestion>Order the following U.S. cities according to population, from
largest to smallest.</lcQuestion>
<lcSequenceOptions>
<lcSequenceOption>
<lcOptionContent>Portland, Oregon</lcOptionContent>
<lcSequence name="lcSequence" value="2"/>
</lcSequenceOption>
<lcSequenceOption>
<lcOptionContent>Chicago, Illinois</lcOptionContent>
<lcSequence name="lcSequence" value="1"/>
</lcSequenceOption>
<lcSequenceOption>
<lcOptionContent>Portland, Maine</lcOptionContent>
<lcSequence name="lcSequence" value="4"/>
</lcSequenceOption>
<lcSequenceOption>
<lcOptionContent>Syracuse, New York</lcOptionContent>
<lcSequence name="lcSequence" value="3"/>
</lcSequenceOption>
</lcSequenceOptions>
<lcFeedbackIncorrect>No, try again, please.<?Pub Caret?>
</lcFeedbackIncorrect>
<lcFeedbackCorrect>Very good.</lcFeedbackCorrect>
</lcSequencing>
Matching interaction
<!--Matching Interaction -->
<lcMatching id="matching">
<title>Matching teams with cities</title>
<lcQuestion>Match the team with the city.</lcQuestion>
<lcMatchTable>
<lcMatchingHeader>
<lcItem>Team</lcItem>
<lcMatchingItem>City</lcMatchingItem>
</lcMatchingHeader>
<lcMatchingPair>
<lcItem>Boston</lcItem>
<lcMatchingItem>Red Sox</lcMatchingItem>
</lcMatchingPair>
<lcMatchingPair>
<lcItem>San Francisco</lcItem>
<lcMatchingItem>Giants</lcMatchingItem>
</lcMatchingPair>
<lcMatchingPair>
<lcItem>Chicago</lcItem>
<lcMatchingItem>Cubs</lcMatchingItem>
</lcMatchingPair>
<lcMatchingPair>
<lcItem>Toronto</lcItem>
<lcMatchingItem>Blue Jays</lcMatchingItem>
</lcMatchingPair>
</lcMatchTable>
</lcMatching>
Hotspot interaction
<!--Hotspot Interaction -->
<lcHotspot id="hotspots">
<title>Team logos hotspot</title>
<lcQuestion>Which of the following is the logo for the Cleveland Indians?</lcQuestion>
<lcHotspotMap>
<image href="hotlogos.gif"/>
<lcArea id="indians">
<shape>rect</shape>
<coords>0,0,50,50</coords>
<lcCorrectResponse value="indians"/>
</lcArea>
<lcArea id="giants">
<shape>rect</shape>
<coords>50,0,100,50</coords>
</lcArea>
<lcArea id="cardinals">
<shape>rect</shape>
<coords>0,50,50,100</coords>
</lcArea>
<lcArea id="orioles">
<shape>rect</shape>
<coords>50,50,100,100</coords>
</lcArea>
</lcHotspotMap>
</lcHotspot></lcInteraction> <lcSummary><title>Summary</title>You are now certified.</lcSummary> </learningAssessmentbody> </learningAssessment>
Issues
Here are issues to consider about the interactions:
- These interactions use lcQuestionOptions in common for lcTrueFalse, lcSingleSelect, and lcMultipleSelect. Do we want to have an explicit lcTrueFalseOptions [lcTrueOption, lcFalseOption] ?
- These interactions do not provide for specifying interaction options, which can set maxChoices, maxAttempts, and reorderChoices (to reorder the choices as alpha, shuffle, or numeric at processing or runtime). As currently specific, lcMatching requires some kind of reorder choices, and it may be desirable to specify other interaction options for processing. Here's how I see the options:
- We leave it to processing, and assume certain defaults for the default processing we provide.
- We include lcInteractionOptions with the interactions domain, and make it available (with defaults) as a top-level choice to lcInteractions, to apply to all of the interactions.
- We include lcInteractionOptions as an optional element with each of the six interactions.
- We include lcInteractionOptions as an optional element that can be supplied with learningGroup or learningObject in the learning map domain.
- Please review, and post additional issues here or to the dita-learningspec email list.
IMS QTI Samples
For comparison with how IMS QTI implements these interactions, see the following.
Choice (includes true/false, single-select, multiple-select)
Additional Resources
For additional information about interactions, see Interactions resources.
Dita Wiki