Import souborů ve formátu GIFT
GIFT je nejkomplexnější z formátů pro importování testových úloh Moodlu z textového souboru. Podporuje různé typy úloh: úlohy s výběrem odpovědí, s krátkou tvořenou odpovědí, s odpovědí pravda/nepravda, numerické úlohy, přiřazování, a také vložení _______ pro formát "vynechané slovo". V rámci jednoho textového souboru lze použít více typů úloh a formát GIFT zároveň umožňuje zadávat poznámky k úlohám, jména úloh, komentář k odpovědím a jejich hodnocení v procentech.
Kódování vašeho textového souboru musí být UTF-8 (pokud nepoužíváte pouze znaky sady ASCII). Příklad souboru s úlohami pro import najdete zde: gift/examples.txt.
TYPY ÚLOH
Úloha s výběrem odpovědí
U úlohy tohoto typu jsou nesprávné odpovědi uvozeny vlnovkou (~) a správné
odpovědi rovnítkem (=).
     Kdo je pohřben v památníku na Vítkově?{~TGM ~Klement Gottwald =nikdo}
Zvláštní případ úlohy s výběrem odpovědí představuje formát "vynechané slovo", který na místo hledaného slova ve větě automaticky vloží značku vynechávky (_____). Varianty odpovědí se v zápisu úlohy "vynechané slovo" uvádějí na místě, kde se má tato značka objevit.
     V památníku na Vítkově byl {~otráven =pohřben ~oddán} Klement Gottwald.
Když jsou varianty odpovědí uvedeny kdekoliv před závěrečným interpunkčním znaménkem, vloží se na jejich místo automaticky značka vynechávky formátu "vynechané slovo". V tomto formátu lze zapsat všechny typy úloh.
Jednotlivé otázky musí být v souboru odděleny jedním prázdným řádkem (dvojité CR). Pro větší srozumitelnost můžete každou odpověď napsat na zvláštní řádek a případně i odsadit. Příklad:
     Americký Den díkůvzdání se slaví { 
         ~druhý 
         ~třetí 
         =čtvrtý 
         } čtvrtek v listopadu.
     
     Z jaké země původně pochází japonské písmo? {
         ~Indie
         =Čína
         ~Korea
         ~Egypt}
Úloha s krátkou tvořenou odpovědí:
U úlohy s krátkou tvořenou odpovědí jsou všechny odpovědi uvozeny rovnítkem
(=), které značí, že jsou všechny správné. Žádná odpověď nesmí být uvozena
vlnovkou.
     Kdo je pohřben v památníku na Vítkově?{=nyní již nikdo =nikdo} 
     Dvě a dvě se rovnají {=čtyřem =4}.
Pokud existuje pouze jedna správná odpověď, nemusí být uvozena rovnítkem. Pozor ale na na záměnu s úlohou typu "pravda/nepravda".
Úloha pravda/nepravda
U tohoto typu úlohy odpověď značí, zda je určité tvrzení pravdivé nebo
nepravdivé. V zápisu úlohy uvádíme odpověď v podobě {TRUE} nebo {FALSE}, nebo
zkráceně {T} a {F}.
     V památníku na Vítkově je pohřben Klement Gottwald.{F}
     Slunce vychází na východě.{T}
Přiřazování
Dvojice správných odpovědí začínají rovnítkem (=) a jsou odděleny symbolem
"->". Musíte vytvořit alespoň tři páry odpovědí k přiřazení.
     Zadání úlohy. { 
         =otázka1 -> odpověď1 
         =otázka2 -> odpověď2 
         =otázka3 -> odpověď3 
         } 
     Přiřaďte k následujícím zemím jejich hlavní města. {
         =Kanada -> Ottawa
         =Itálie -> Řím
         =Japonsko  -> Tokio
         =Rakousko -> Vídeň
         }
U úloh typu "přiřazování" nelze k odpovědím připojovat komentář ani stanovit procentní hodnocení odpovědí.
Numerická úloha
Odpověď u numerické úlohy musí začínat znakem křížku (#). U odpovědi lze
zároveň stanovit velikost přijatelné chyby, která se uvádí za správnou odpovědí
a odděluje se dvojtečkou. Pokud je například správná odpověď jakákoliv hodnota
z intervalu 1,5 až 2,5, zapíše se jako {#2:0.5}. To značí, že správná
odpověď je hodnota 2 s přijatelnou chybou 0,5 (tedy interval od 1,5 do 2,5).
Pokud není velikost chyby uvedena, předpokládá se, že je nulová.
     Kdy se narodil Tomáš G. Masaryk? {#1822}
     Jaká je hodnota pí (na tři desetinná místa)?{#3.1415:0.0005}.
Odpověď na numerickou úlohu může být zapsána také jako interval v následující podobě: {#MinimálníHodnota..MaximálníHodnota}
     Jaká je hodnota pí (na tři desetinná místa)? {#3.141..3.142}.
Uživatelské rozhranní Moodlu nedokáže pracovat s více variantami odpovědi na numerickou úlohu. Programový kód Moodlu i formát GIFT to však dovedou; toho lze využít pro zadání několika číselných intervalů v rámci jedné odpovědi, zvláště pak v kombinaci s procentním hodnocením jednotlivých variant. Pokud použijeme více správných odpovědí, musí být v zápise odděleny rovnítkem (stejně jako u otázek s krátkou tvořenou odpovědí).
     Kdy se narodil Tomáš G. Masaryk? {#
         =1822:0
         =%50%1822:2}
Vzhledem k tomu, že grafické uživatelské rozhraní Moodlu nedokáže pracovat s více variantami odpovědi na numerickou úlohu, nelze je v Moodlu ani prohlížet, ani upravovat. Chceme-li změnit druhou a další varianty odpovědi, nezbývá než otázku odstranit a znovu ji importovat s novou, rozšířenou odpovědí (nebo použít nástroj pro správu databáze, například phpMyAdmin).
VOLBY
Kromě těchto základních typů úloh nabízí filtr formátu GIFT další volby: poznámky k úloze, jméno úlohy, komentář k odpovědím a hodnocení odpovědí v procentech.
Poznámky k úloze
Textový soubor může obsahovat i informace, které se nebudou vkládat do Moodlu.
Takto můžete úlohy opatřit např. nadpisy nebo dalšími informacemi. Filtr
ignoruje všechny řádky začínající dvěma lomítky (tabulátory a mezery před nimi
se neuvažují).
     // Podnadpis: Číselné úlohy
     Kolik je 2 plus 2? {#4}
Jméno úlohy
Na začátku úlohy můžete určit její jméno, které musí být uzavřeno do dvojitých
dvojteček.
     ::Původ kandži:: Z které země původně pochází japonské písmo? {=Čína}
     ::Díkůvzdání:: Americký Den díkůvzdání se slaví {~druhý ~třetí =čtvrtý} čtvrtek v listopadu.
Jestliže jméno úlohy není určeno, použije se jako jméno celé její znění.
Komentář
Ke každé odpovědi lze připojit komentář; připojuje se za odpověď a uvozuje se
křížkem (#).
     Která z těchto možností je správná?{
     ~chybná odpověď#komentář k chybné odpovědi 
     ~další chybná odpověď#komentář k této chybné odpovědi 
     =správná odpověď#komentář ke správné odpovědi}
     
     Kdo je pohřben v památníku na Vítkově?{
     =nyní již nikdo#výborně!
     =nikdo#výborně!}
     
     V památníku na Vítkově je pohřben TGM. {FALSE#Není a nikdy nebyl.}
U úloh s výběrem odpovědí se komentář zobrazí pouze k té variantě, kterou student zvolí. U úloh s krátkou tvořenou odpovědí se komentář zobrazí jen v případě, že student odpoví správně. U úloh pravda/nepravda se komentář zobrazí pouze tehdy, jestliže student odpoví nesprávně. V posledním uvedeném příkladě by se tedy komentář zobrazil pouze v případě, že by student zvolil odpověď "pravda".
Procentní hodnocení odpovědí
Procentní hodnocení odpovědí je k dispozici jak pro úlohy s výběrem odpovědí,
tak pro úlohy s krátkou tvořenou odpovědí. Procentní hodnocení se vkládá za
vlnovku (u úloh s výběrem odpovědí) nebo za rovnítko (u úloh s krátkou tvořenou
odpovědí), přičemž daný údaj o procentech je uzavřen mezi dvěma znaky "%"
(např. %50%). Toto nastavení lze kombinovat s komentáři k odpovědím.
     Složitá otázka.{~chybná odpověď ~%50%téměř správná odpověď =zcela správná odpověď} 
     ::Ježíšovo město::Ježíš Kristus byl z {
     ~Jeruzaléma#Jeruzalém je sice významné město, ale odpověď zní jinak.
     ~%25%Betléma#Zde se narodil, ale nevyrůstal.
     ~%50%Galileje#Je třeba být přesnější.
     =Nazaretu#Ano! Přesně tak!}.
     
     ::Ježíšovo město:: Ježíš Kristus byl z {
     =Nazaretu#Ano! Přesně tak!
     =%75%Nasaretu#Správně, ale pozor na pravopis.
     =%25%Betléma#Zde se narodil, ale nevyrůstal.}
Všimněte si, že poslední dva uvedené příklady obsahují tutéž otázku – poprvé jako úlohu s výběrem odpovědí, podruhé jako úlohu s krátkou tvořenou odpovědí.
Systém umožňuje zadat u variant odpovědi i procentní hodnoty, které NENABÍZÍ uživatelské rozhraní Moodlu. Tyto hodnoty budou testem zpracovány správně (podle určení hodnot při importu) a správně se také zobrazí studentům při řešení testu. Nebudou se však zobrazovat správně učiteli, pokud bude úlohu upravovat prostřednictvím uživatelského rozhraní (Úprava úlohy v modulu Test). Rozbalovací nabídka totiž povoluje pouze několik pevných hodnot, a pokud počet procent přesně neodpovídá ani jedné z nich, nezobrazí se správně. Pokud budete upravovat podobnou úlohu prostřednictvím uživatelského rozhranní, změní se procentní hodnota na některou z přednastavených hodnot.
Určete formát textu úlohy
Pro samotný text úlohy můžete určit jeden z volitelných textových formátů. V
současné době jsou k dispozici formáty Moodle (Moodle auto-formát),
html (Formát HTML), text (Čistě textový formát) a Markdown
(Formát Markdown). Zvolený formát určíte v hranatých závorkách přímo před
textem úlohy. Více o textových
formátech v Moodlu.
[markdown]*Americký Den díkůvzdání* se slaví { 
       ~druhý 
       ~třetí 
       =čtvrtý 
     } čtvrtek v listopadu. 
Více odpovědí
Možnost "Více odpovědí" se používá pro úlohy s výběrem odpovědí, u nichž musí
být označeny dvě a více odpovědí, aby student získal plný počet bodů. Možnost
bude povolena, pokud přidělíte dílčí procentní hodnocení více odpovědím, ale
zárověň zádné z nich neudělíte plné bodové ohodnocení.
     Kdo byl pohřben v památníku na Vítkově? { 
          ~Nikdo 
          ~%50%Klement Gottwald 
          ~%50%Představitelé komunistického režimu 
          ~TGM }
Povšimněte si, že žádná odpověď není uvozena rovnítkem (=). Součet bodů by zároveň neměl překročit 100 %, jinak Moodle zobrazí chybové hlášení. Aby student automaticky nezískal 100 % pouze tím, že označí všechny odpovědi, je dobré nastavit pro nesprávné odpovědi záporné procentní hodnoty.
     Kdo byl pohřben v památníku na Vítkově? { 
         ~%-50%Nikdo 
         ~%50%Klement Gottwald 
         ~%50%Představitelé komunistického režimu 
         ~%-50% TGM }
Speciální znaky ~ = # { } :
Znaky ~ = # { } slouží k řízení činnosti filtru a nelze je použít jako
součást textu úlohy. Protože tyto znaky vykonávají při řízení činnosti tohoto
filtru speciální funkci, nazývají se "řídicí znaky". V jistých případech je
však použití některého z těchto znaků nezbytné, např. pro zápis matematického
výrazu. Řešením tohoto problému je předejít interpretaci uvedených znaků jako
řídicích – před znak se v tom případě vloží zpětné lomítko (\); filtr jej pak
nebude považovat za znak řídicí a přepíše jej beze změny do textu úlohy.
Příklad:
     Který výraz je roven 5? {
          ~ \= 2 + 2
          = \= 2 + 3
          ~ \= 2 + 4  }
     ::Řídicí znaky formátu GIFT::
     Který z následujících znaků NENÍ řídicím znakem importního formátu GIFT? { 
        ~ \~      # \~ je řídicí znak.
        ~ \=      # \= je řídicí znak.
        ~ \#      # \# je řídicí znak.
        ~ \{      # \{ je řídicí znak.
        ~ \}      # \} je řídicí znak.
        = \       # Správně! \ (zpětné lomítko) není řídicí znak. ALE
              používá se, chceme-li řídicí znak použít v textu úlohy.
     }
Při zpracování úlohy se zpětné lomítko odstraní a v Moodlu se do textu úlohy neuloží.
Další volby
V úlohách s krátkou tvořenou odpovědí můžete nastavit rozlišování malých a
velkých písmen, pokud na následujícím řádku změníte "0" na "1":
$question->usecase = 0; // Ignore case
Další volby lze nastavit úpravou importního filtru gift/format.php.
PODĚKOVÁNÍ
Formát GIFT a filtr pro jeho převod do Moodlu byl vytvořen díky spolupráci řady tvůrců a uživatelů Moodlu. Jeho základem je formát "vynechané slovo", na jehož tvorbě se podíleli Martin Dougiamas a Thomas Robb. Importní filtr vytvořil v prosinci 2003 Paul Tsuchido Shew a zakomponoval do něj i připomínky ostatních, které se týkaly hlavně rozsahu možností formátu. Jméno GIFT vzniklo jako zkratka pro "General Import Format Technology"; to by ovšem byl příliš dlouhý název pro tak jednoduchý filtr, proto se mu říká prostě GIFT.
Dokumentaci k formátu GIFT vypracoval Paul Tsuchido Shew, http://ac.shew.jp. Poslední aktualizace proběhla 27. února 2004.
Rejstřík všech souborů nápovědy
Zobrazit tuto nápovědu v jazyce: English