User:Miriya52/week3

Refer to project glossary for acronyms and definitions. Week 3: December 19 - 23

Progress Update
This week, I worked on a mental mapping of the pyslet QTI v2.1 object structure. Pyslet parses the xml QTI text to these classes (with nested inheritance) to represent:
 * Base type: null, Boolean, floats, files, pairs, integers, string
 * Cardinality: multiple, ordered, record, single. Refers to types of responses.
 * Container: for multiple value responses.
 * Mapping: mapping values to floats. For use in partial credit for responses.
 * Response
 * Outcome (still need to read more about what this is for)
 * Few more classes that on quick read through, I deemed is not relevant for GIFT.

QTI is much more extensive in ways to specify a question, including embedding graphics and handling how the student interacts with a series of questions. For example, after the student has selected responses, is it submitted one by one or all together? Are the questions shuffled randomly? Does the next question depend on the student's response to the prior question? GIFT is just a text format for specifying questions. Embedding multimedia requires a plug-in.

--

The plan is to write a unit test for the functionality I want to implement, then implement the classes to pass the unittest.

Code Additions
pyslet/unittests/test_gift.py: unit test for multiple choice with partial credit

pyslet/mygift.txt: test file for creating a GIFTDocument to parse file in GIFT format

Plan for Next Week

 * Write namespace object and parsing functions for GIFT text file