导入“GIFT”格式文件

GIFT是Moodle从文本文件导入问题的通用格式。它支持单选题、是非题、简答题、匹配题、数学题及填空题。在一个单独的文本文件中可以添加多种类型的题目,这种格式还支持整行注释、问题名称、反馈和百分比权重。
您的文本编码必须是utf-8格式(除非您只使用ASCII字符)。以下是一个问题文本文件的例子:gift/examples.txt.

基础
GIFT文件里的每一个问题中不能包含空行。但问题之间至少有一个空行。如果在您的问题里需要一个空行您可以用:\n。

您可以在任何地方用注释,但是必须在这行注释前用双斜线(//)。

问题类型

单选题:

对于单选题:错误答案以波浪号(~)为前缀,正确答案以等号(=)为前缀。例如:

Who's buried in Grant's tomb?{~Grant ~Jefferson =no one}

Missing Word格式可以在句子中自动插入一个填空线(像_____)。用Missing Word格式,可以根据需要,让填空线出现在句子的任何地方,答案就填在这条线上。例如:

     Grant is {~buried =entombed ~living} in Grant's tomb.

如果答案出现在句号前,"missing word"格式会插入一个填空线。在 Missing Word格式中可以填写所有的问题类型。

 

必须有一个空行(双回车)把问题分开。为了表示清楚,答案要分行写。例如
     The American holiday of Thanksgiving is celebrated on the {
         ~second
         ~third
         =fourth
     } Thursday of November.
     
     Japanese characters originally came from what country? {
         ~India
         =China
         ~Korea
         ~Egypt}

简答:


在简答题中,答案前面都是以等号(=)为前缀,这表明它们都是正确答案。答案中不能包含波浪号前缀。例如:

     Who's buried in Grant's tomb?{=no one =nobody}

     Two plus two equals {=four =4}.

如果只有一个正确的答案,只要不与是非题混淆,可以不写等号前缀。

是非题:

是非题的答案表明命题是对还是错。答案应该写成{TRUE} 或 {FALSE},也可以简写成{T} 或{F}。例如:

     Grant is buried in Grant's tomb.{F}

     The sun rises in the east.{T}

匹配题:

匹配题以一个等号(=)开始,用符号“->”分开,至少包含三对匹配项。例如:

     Matching Question. {
         =subquestion1 -> subanswer1
         =subquestion2 -> subanswer2
         =subquestion3 -> subanswer3
         }
     
     Match the following countries with their corresponding capitals. {
         =Canada -> Ottawa
         =Italy  -> Rome
         =Japan  -> Tokyo
         =India  -> New Delhi
         }

匹配题不支持反馈或答案的百分比权重。

数学题:

数学题的答案必须以数学符号(#)开始。数字答案可以包括一个误差容限(被一个冒号分开,写在正确答案之后)。例如:如果正确答案在1.5和2.5之间,这时可以写成{#2:0.5}。这表明2在0.5的误差容限内是正确的(例如:从1.5到2.5这个范围)。如果没有详细说明误差容限,可以假定为0。例如:

     When was Ulysses S. Grant born? {#1822}

     What is the value of pi (to 3 decimal places)? {#3.1415:0.0005}.

Optionally, numerical answers can be written as a span in the following format {#MinimumValue..MaximumValue}.

     What is the value of pi (to 3 decimal places)? {#3.141..3.142}.

Moodle的浏览器界面不支持多项数学题答案,但是Moodle的代码支持,GIFT也支持。这样就可以用来指定数字的多重范围;当与百分比权重结合时,特别有用。如果使用多个答案,这些答案必须用等号分开,就像简答题一样。例如:

     When was Ulysses S. Grant born? {#
         =1822:0
         =%50%1822:2}

注意:因为Moodle浏览器GUI不支持数学问题的多项答案,通过Moodle就不能看到和编辑多项答案。改变原来的数字答案的唯一方法是删除或重新导入这个问题(或者选择其它语言,像phpMyAdmin)。

选择

除了这些基本的问题类型,此过滤器还提供了如下选择:整行注释、问题名称、反馈和百分比权重。

整行注释:

注释不能被导入到Moodle中,但可以包含在文本文件中。注释可以用于提供标题或关于问题的更多信息。以双反斜线开始的所有行都会被过滤器忽略。例如:

     // Subheading: Numerical questions below
     What's 2 plus 2? {#4}

问题名称:

您可以把一个问题名称放在双冒号之间并置于开头。例如:

     ::Kanji Origins::Japanese characters originally
     came from what country? {=China}

     ::Thanksgiving Date::The American holiday of Thanksgiving is 
     celebrated on the {~second ~third =fourth} Thursday of November.

如果没有指定问题名称,那么缺省情况下整个问题就是名称。

反馈:通过在答案后加一个数学符号(#)和反馈,可以把反馈放在每个答案中。

     What's the answer to this multiple-choice question?{
     ~wrong answer#feedback comment on the wrong answer
     ~another wrong answer#feedback comment on this wrong answer
     =right answer#Very good!}
     
     Who's buried in Grant's tomb?{
     =no one#excellent answer!
     =nobody#excellent answer!}
     
     Grant is buried in Grant's tomb.{FALSE#No one is buried in Grant's tomb.}

对于单选题,反馈只在学生选择答案后显示。对于简答题,反馈只在学生输入相应的正确答案时显示。对于是非题,导入的反馈被保存起来,当学生选择错误答案时,显示该反馈。因此,在上述例子中,学生只有选择TRUE时,才能看到反馈。

答案的百分比权重:

答案的百分比权重既可以用于单选题,也可以用于简答题。答案的百分比权重在波浪号(单选题)或等号(简答题)后,把期望的百分数填在两个百分号内(例如:%50%)。选项可以与反馈结合在一起。例如:

     Difficult question.{~wrong answer ~%50%half credit answer =full credit answer}
          
     ::Jesus' hometown::Jesus Christ was from {
     ~Jerusalem#This was an important city, but the wrong answer.
     ~%25%Bethlehem#He was born here, but not raised here.
     ~%50%Galilee#You need to be more specific.
     =Nazareth#Yes! That's right!}.
     
     ::Jesus' hometown:: Jesus Christ was from {
     =Nazareth#Yes! That's right!
     =%75%Nazereth#Right, but misspelled.
     =%25%Bethlehem#He was born here, but not raised here.}

注意:最后两个例子在本质上是一样的,第一个作为单选题,然后作为简答题。

注意:通过浏览器界面指定答案百分比权重的方法,可能不起作用。导入页面的分数匹配下拉列表,可以决定答案的百分比权重是怎样起作用的。

您既可以要求报告错误答案,也可以要求把答案权重调为最有效的答案权重。

给问题指定文本格式

问题文本只允许有一个可选择的文本格式。目前,可以用的格式有moodle(Moodle自动套用格式),html(HTML格式),plain(Plain文本格式)以及markdown(Markdown 格式)。格式在问题文本前的方括号内指定。 在Moodle中关于文本格式的更多信息。
[markdown]The *American holiday of Thanksgiving* is celebrated on the {
         ~second
         ~third
         =fourth
     } Thursday of November.    

多选题:
多个答案选项用于多选题,为了得到满分,学生必须选择两个或两个以上的答案。通过把部分答案权重赋值于多个答案,激活多个答案选项。这时,只选择一个正确答案不能得到满分。例如:

     What two people are entombed in Grant's tomb? {
          ~No one
          ~%50%Grant
          ~%50%Grant's wife
          ~Grant's father }

注意:任何答案都没有等号(=),答案的权重百分比总和不能超过100%。否则,Moodle会返回一个错误提示。为了避免学生通过简单的核算答案而得到满分,最好把错误答案设置为负权重。

     What two people are entombed in Grant's tomb? {
          ~%-50%No one
          ~%50%Grant
          ~%50%Grant's wife
          ~%-50%Grant's father }

特殊字符 ~ = # { }:

这些符号~ = # { }控制过滤器的操作,在问题中不能用作一般的文本。因为这些符号有专门的作用:决定过滤器的操作,所以被称作“控制符”。但是,有时您可能要用这些符号中的一个,例如:在一个问题中用到一个数学公式。处理这个问题的方法是“避开”这些控制符。您只需在控制符前加一个反斜线(\),这样,过滤器就知道了:您想用它作为文字字符,而不是控制符。例如:

     Which answer equals 5? {
          ~ \= 2 + 2
          = \= 2 + 3
          ~ \= 2 + 4  }

     ::GIFT Control Characters::
     Which of the following is NOT a control character for the GIFT import format? {
        ~ \~     # \~ is a control character.
        ~ \=     # \= is a control character.
        ~ \#     # \# is a control character.
        ~ \{     # \{ is a control character.
        ~ \}     # \} is a control character.
        = \     # Correct! \ (backslash) is not a control character. BUT,
                   it is used to escape the control characters.
     }

当运行这个问题时,反斜线就被忽略了,也不会被保存在Moodle 中。

其它的选择:

简答题可以通过在下一行中把“0”变为“1”来区分大小写:
$question->usecase = 0; // Ignore case

上海师范大学 教育技术系 06级研究生 张志梅译 zzmei84@gmail.com
上海师范大学 教育技术系 06级研究生 郑起运 李岩 夏丽君 刘启刚校 

帮助文件索引
显示本帮助的English版本