"GIFT" formájú állományok importálása

A GIFT a legkiterjedtebb importálási forma, mellyel a Moodle szöveges állományokból tesztkérdéseket képes beolvasni. Támogatja a feleletválasztós, igaz-hamis, kiegészítő, párosító és számjegyes kérdések használatát, továbbá az _____ beszúrását a "szókitöltő" forma esetén. A különféle kérdésfajták egyetlen szöveges állományban vegyesen használhatók, emellett a formátum támogatja egysoros megjegyzések, kérdésnevek, visszajelzés és százaléksúlyozású pontok használatát.

A szöveges állomány kódolásának meg kell egyeznie a Moodle telepítése során alkalmazott kódolással. Példát találunk a kérdést tartalmazó szöveges állományokra ezen a helyen: gift/examples.txt.

### KÉRDÉSFAJTÁK

Feleletválasztós:
Feleletválasztós kérdések esetén a helytelen válaszok előtt hullámjel (~) áll, a helyes válaszokat az egyenlőségjel (=) előzi meg.

         Hányat lép a veréb egy évben? {~egyet ~sokat =egyet sem}

A szókitöltő forma automatikusan beszúr egy kitöltendő üres részt (például így: _____) a mondat közepébe. A szókitöltő forma használata esetén tegyük a válaszokat oda, ahol az aláhúzás a mondatban megjelenik.

         A veréb  {~egyet =egyet sem ~sokat} lép egy évben.

Ha a válaszok a lezáró írásjel előtt jönnek, akkor a szókitöltő formához az adott helyen megjelenik a kitöltés helyét jelző vonal. Minden kérdésfajta megfogalmazható szókitöltő formában.

A kérdések elválasztása üres sorral (kettős kocsi-vissza jel beszúrásával) történik. Az egyértelműség érdekében a válaszok megadhatók külön sorokban, sőt, a sorban beljebb kezdhetők. Például:

         Amerikában a hálaadás ünnepét november {
             ~második
             ~harmadik
             =negyedik
         } csütörtökén ünneplik.

         A japán betűk eredetileg mely országból származnak? {
             ~India
             =Kína
             ~Korea
             ~Egyiptom}

Kiegészítő kérdésfajta:
Kiegészítő kérdésfajta esetén a válaszok mindegyike előtt egyenlőségjel (=) szerepel, ezzel jelöljük, hogy mindegyik válasz helyes válasz. A válaszokban nem szerepelhet hullámjel.

         Hányat lép a veréb egy évben?{=egyet sem =semennyit}

         Kétszer kettő egyenlő  {=négy =4}.

Amennyiben csak egyetlen helyes kiegészítő válasz van, akkor azt megadhatjuk a megelőző egyenlőségjel nélkül is, feltéve, hogy nem keverhető össze az igaz-hamis fajtával.

Igaz-hamis:
Ennél a kérdésfajtánál a válasz azt jelzi, hogy az adott megállapítás igaz, avagy hamis. A választ {TRUE} vagy {FALSE}, rövidítve {T} vagy {F} [igaz, illetve hamis] formában adhatjuk meg.

         A veréb hármat lép egy évben.{F}

         A nap keleten kel fel.{T}

Párosító:
A párosító párjai egyenlőségjellel (=) kezdődnek, elválasztónak a "->" jelet használjuk. Legalább három párosítandó párt kell létrehoznunk.

         Párosító kérdés {
             =1. alkérdés -> 1. alválasz
             =2. alkérdés -> 2. alválasz
             =3. alkérdés -> 3. alválasz
             }

         Párosítsa az alábbi országokat és fővárosukat. {
             =Kanada -> Ottawa
             =Olaszország -> Róma
             =Japán  -> Tokió
             =India  -> Új-Delhi
             }

A párosító kérdések nem támogatják a visszajelzést és a százalékosan súlyozott válaszokat.

Számjegyes:
A számjegyes kérdések válaszokat tartalmazó részének számjegyjellel (#) kell kezdődni. A számjegyes válaszokban megadhatunk egy hibahatárt, melyet kettősponttal elválasztva a helyes válasz után írunk. Ha például a helyes válasz 1,5 és 2,5 közé eshet, akkor azt így adjuk meg: {#2:0,5}. Ez azt jelenti, hogy egy 0,5-ös (azaz 1,5-től 2,5-ig terjedő) hibahatárt megengedő 2 eredmény helyesnek tekintendő. Ha nem adunk meg hibahatárt, akkor a rendszer azt nullának tekinti.

         Mikor született Ulysses S. Grant? {#1822}

         Milyen értéke van a pi-nek (3 tizedes értékig)? {#3,1415:0,0005}.

Opcionálisan a számjegyes válaszok megadhatók tartományként az alábbi formában: {#MinimálisÉrték..MaximálisÉrték}.

         Milyen értéke van a pi-nek (3 tizedes értékig)? {#3,141..3.142}.

A Moodle böngésző felülete nem támogatja a többszörös számjegyes válasz használatát, ugyanakkor a Moodle kódja és a GIFT támogatja ezt. Ily módon többszörös számjegyes tartományt adhatunk meg, ami különösen hasznos lehet akkor, ha százalékosan súlyozott pontozással kombináljuk. Ha többszörös válaszadást használunk, ezek elé - a kiegészítő kérdéshez hasonlóan - egyenlőségjelet kell beszúrni.

         Mikor született Ulysses S. Grant? {#
             =1822:0
             =%50%1822:2}

Ne feledjük, hogy mivel a Moodle böngészőjének grafikus felülete nem támogatja a többszörös válaszadást számjegyes kérdések esetén, ezért ezeket nem lehet a Moodle-ban megtekinteni vagy szerkeszteni. Az első utáni számjegyes válaszok módosítására az egyetlen lehetőség, ha kitöröljük az adott kérdést és újraimportáljuk (vagy valami phpMyAdmin-hoz hasonló megoldást használunk).

### OPCIÓK

Ezen alapvető kérdésfajtákon túl ez a szűrő a következő opciókat teszi lehetővé: egysoros megjegyzés, kérdés neve, visszajelzés, valamint százalékosan súlyozott válaszok.

Egysoros megjegyzés:
A szöveges állományba olyan megjegyzéseket írhatunk, amelyeket a Moodle nem importál. Ezzel fejléceket vagy további információkat adhatunk meg a kérdésekkel kapcsolatosan. Minden kettős visszaperjellel kezdődő sort (a tabulátorokat vagy szóközöket nem számítva) a szűrő nem vesz figyelembe.

         // Alcím: Számjegyes kérdések alább
         Mennyi 2 meg 2? {#4}

Kérdés neve:
A kérdésnek úgy adhatunk nevet, hogy először megírjuk, majd dupla kettőspontok közé illesztjük.

         ::A kanji eredete::A japán betűk eredetileg mely országból származnak? {=Kína} ::Hálaadás ünnepe::Amerikában a hálaadás ünnepét november {
             ~második ~harmadik =negyedik} csütörtökén ünneplik.

Ha nem adunk nevet a kérdésnek, akkor alaphelyzetben az egész kérdést névnek tekinti a rendszer.

Visszajelzés:
Az egyes válaszokhoz visszajelzést adhatunk meg a válaszok után egy számjel (#), majd a visszajelzés begépelésével.

         Mi a válasz erre a feleletválasztós kérdésre?{
         ~rossz válasz#visszajelzésként hozzáfűzött megjegyzés a rossz válaszhoz
         ~egy másik rossz válasz#visszajelzésként hozzáfűzött megjegyzés ehhez a rossz válaszhoz
         =jó válasz#Nagyon jó!}

         Hányat lép a veréb egy évben?{
         =egyet sem#kitűnő válasz!
         =semennyit#kitűnő válasz!}

         A veréb sokat lép egy évben.{FALSE#A veréb egyet sem lép, mert ugrik.}

Feleletválasztós kérdéseknél csak a tanuló által kiválasztott válaszra vonatkozó visszajelzés jelenik meg. Kiegészítő kérdéseknél a visszajelzés csak akkor jelenik meg, amikor a tanulók helyes választ adnak. Igaz-hamis kérdéseknél az importált visszajelzést a rendszer elmenti, így az akkor jelez ki, ha a tanuló rossz választ választott. Ennek megfelelően a fenti utolsó példánál a tanuló csak akkor látja a visszajelzést, ha IGAZ volt a válasza.

Válaszok százalékos súlyozása:
Válaszok százalékos súlyozásával mind a feleletválasztós, mind a kiegészítő kérdések esetén élhetünk. A válaszok százalékos súlyozását úgy adhatjuk meg, hogy a hullámvonal (feleletválasztós kérdéseknél) vagy az egyenlőségjel (kiegészítő kérdéseknél) után százalékjelek között megadjuk a kívánt százalékos értéket (például így: %50%). Ezt az opciót kombinálhatjuk a visszajelzéshez fűzött megjegyzésekkel.

         Nehéz kérdés.{~rossz válasz ~%50%fél kreditpontos válasz = teljes kreditpontos válasz}

         ::Jézus szülővárosa::Jézus Krisztus származási helye {
         ~Jeruzsálem#Ez egy fontos város volt, de a válasz rossz.
         ~%25%Betlehem#Ott született, de nem ott nevelkedett.
         ~%50%Galilea#Adjon pontosabb választ.
         =Názáret#Helyes! Jó válasz!}.

         ::Jézus szülővárosa:: Jézus Krisztus származási helye  {
         =Názáret#Helyes! Jó válasz!
         =%75%Názeret#Helyes, de hibás a helyesírása.
         =%25%Betlehem#Ott született, de nem ott nevelkedett.}

Ne feledjük, hogy a két utolsó példa alapvetően ugyanaz a kérdés, az első feleletválasztós, a második kiegészítő formában.

Figyeljük meg, hogy a válaszokhoz megadhatunk olyan százalékos súlyozást, amelyet a böngésző mint felület NEM tesz elérhetővé. Az ilyen válaszokhoz rendelt súlyok kiszámítása helyesen történik (az importálás során hozzárendelt értéknek megfelelően), a tesztet megoldó tanuló számára pedig a szokásos módon jelenik meg. Ugyanakkor az ilyen válaszsúlyok nem jelennek meg helyesen a tanár számára, amikor a Moodle Kérdés szerkesztése menüjében végzi a szerkesztést. A legördülő menü mindössze bizonyos rögzített értékeket enged meg, és ha a válaszsúly nem pontosan egyezik meg az előre meghatározott értékek valamelyikével, akkor a kijelzés sem lesz pontos. Ha ilyen kérdést szerkesztünk a böngésző felületén keresztül, akkor a válaszhoz rendelt súly a kijelzettre fog módosulni.

Több válasz:
A több választ tartalmazó opció feleletválasztós kérdések esetén használatos, amikor a teljes kreditponthoz két vagy több választ kell kiválasztani. A több választ lehetővé tevő opciót úgy kapcsolhatjuk be, hogy a több válaszhoz részsúlyokat rendelünk, ugyanakkor egy válasznál sem engedjük meg teljes kreditpont hozzárendelését.

         Melyik két hónap következik egymás után? {
              ~%-50%március és május
              ~%50%május és június
              ~%50%szeptember és október
              ~%-50%február és április }

Speciális karakterek ~ = # { } :
Ezek a szimbólumok ~ = # { } ennek a szűrőnek a működését szabályozzák, ezért nem használhatók kérdések szövegében. Mivel ezeknek a jeleknek speciális szerepe van ennek a szűrőnek a működését illetően, elnevezésük "vezérlőkarakter." Néha azonban szükségünk lehet arra, hogy valamelyiküket - például egy matematikai képletben - kérdésben használjuk. Ezt úgy oldhatjuk meg, hogy az adott vezérlőkaraktert speciális jellel együtt írjuk. Mindössze annyit kell tennünk, hogy a vezérlőkarakter elé egy visszaperjel karaktert (\) írunk. Így a szűrő tudni fogja, hogy mikor akarjuk az adott karaktert eredeti jelentésében használni, és mikor szerepel vezérlőkarakterként. Például:

         Melyik válasz eredménye 5? {
              ~ \= 2 + 2
              = \= 2 + 3
              ~ \= 2 + 4  }

         ::GIFT vezérlőkarakterek::
         Az alábbiak közül melyik NEM vezérlőkarakter a GIFT importálási formátuma esetén? {
            ~ \~     # \~ vezérlőkarakter.
            ~ \=     # \= vezérlőkarakter.
            ~ \#     # \# vezérlőkarakter.
            ~ \{     # \{ vezérlőkarakter.
            ~ \}     # \} vezérlőkarakter.
            = \     # Helyes! \ (visszaperjel) nem vezérlőkarakter. DE,
                       használhatjuk vezérlőkarakterek eredeti jelentésben való használatának jelzésére.
         }

A kérdés feldolgozása során a visszaperjel törlődik, a Moodle nem tárolja.

Egyéb opciók:
Kiegészítő kérdések esetén úgy különböztethetjük meg a kis- és nagybetűs írásmódot, hogy az alábbi sorban a "0"-t "1"-re módosítjuk:
`$question->usecase = 0; // Kis-/nagybetű figyelmen kívül hagyva`

Egyéb opciókat érhetünk el, ha módosítjuk a gift/format.php importálási szűrő kódját.

### KREDITPONTOK

Ennek a szűrőnek a kidolgozása a Moodle közösségének számos tagja által végzett erőfeszítés eredménye. Eredetileg szókitöltős formátumra épült Martin Dougiamas és Thomas Robb programkódja alapján. Paul Tsuchido Shew ezt a szűrőt 2003 decemberében írta meg. A szűrőbe beépítette a közösség részéről egy robusztusabb kérdésformára vonatkozóan érkezett javaslatokat. Az elnevezés a "General Import Format Technology" [általános importálási formátum technológiája] kifejezésből alkotott mozaikszó: GIFT.

A GIFT-szűrő és annak dokumentációja Paul Tsuchido Shew munkája: http://ac.shew.jp. Utolsó frissítés dátuma: 2004. február 27.