gift
<entry-title>GIFT Syntax</entry-title>
- short URL
- http://bit.ly/giftax
The GIFT picoformat allows writing multiple-choice, true-false, short answer, matching, missing word, and numerical quiz questions in a simple text format.
The GPLed Moodle Course/Learning Management System can import and export questions in the GIFT format.
Format
Symbols | Use |
---|---|
// text | Comment until end of line (optional) |
::title:: | Question title (optional) |
text | Question text (becomes title if no title specified) |
{ | Start answer(s) -- without any answers, text is a description of following questions |
{T} or {F} | True or False answer; also {TRUE} and {FALSE} |
{ ... =right ... } | Correct answer for multiple choice, (multiple answer?) or fill-in-the-blank |
{ ... ~wrong ... } | Incorrect answer for multiple choice or multiple answer |
{ ... =item -> match ... } | Answer for matching questions |
#feedback text | Answer feedback for preceding multiple, fill-in-the-blank, or numeric answers |
{# | Start numeric answer(s) |
answer:tolerance | Numeric answer accepted within ± tolerance range |
low..high | Lower and upper range values of accepted numeric answer |
=%n%answer:tolerance | n percent credit for one of multiple numeric ranges within tolerance from answer |
} | End answer(s) |
\character | Backslash escapes the special meaning of ~ = # { } and : (//?) |
$CATEGORY: path/name | With a blank line before and after, sets following questions' category (path) name |
$question->usecase = 1; | Alphabetic case-sensitive comparison (off by default) |
Examples
// true-false ::Q1:: 1+1=2 {T} // not sure if comments are okay here // multiple choice ::Q2:: What's between orange and green in the spectrum? {=yellow ~red ~blue} // fill-in-the-blank ::Q3:: Two plus {=two =2} equals four. // matching ::Q4:: Which animal eats which food? { =cat -> cat food =dog -> dog food } // math range question -- note: {#1..5} is the same range ::Q5:: What is a number from 1 to 5? {#3:2} // multiple numeric answers with partial credit and feedback ::Q7:: When was Ulysses S. Grant born? {# =1822:0 # Correct! You get full credit. =%50%1822:2 # He was born in 1822. You get half credit for being close. } // essay ::Q8:: How are you? {} // alternate layout ::Title :: Question { =Correct answer 1 =Correct answer 2 ~Wrong answer 1 #Response to wrong answer 1 ~Wrong answer 2 #Response to wrong answer 2 }
Note: the table and examples above was adapted from and then migrated back to the GPL-licensed Moodle site, not copied from there.
Extensions for learner adaptation
Still to be done to extend the format for learner adaptivity (per, for example, del Soldato, T. & du Boulay, B. (1995) "Implementation of Motivational Tactics in Tutoring Systems," Journal of Artificial Intelligence in Education, 6(4): 337-78) is to add optional prerequisite and relative difficulty links to other questions (titles can be used) and optional question help text at two levels of specificity:
- relations to other questions
- set of questions which help answer this question
- set of questions which answering this question helps answer
(Can some of the directed graph of which questions assist in the answering of other questions be derived from categorization or must it be stored completely explicitly?)
- set of relations to other questions by relative difficulty; for each:
- another question
- more or less difficult, and how much
- (all these are optional)
- general help
- specific help
Extension choices
Inside {}s, e.g.,
::milk-color :: What color is milk? { =white @helps-answer: latte-color // helps if you know this @easier-than: sky-color, // this question is easier integrate-shroedinger-eqn%1% // need a numeric quantity ? Think about the color of full milk bottles // general help ?? It's the same color as chalk // specific help }
That would have the advantage of being tightly syntacticly bound to the question.
See also
- 5-page reference (PDF)
- picoformats