XML format za uvoz vprašanj v spletno učilnico Moodle

Spletna učilnica Moodle nam omogoča izvoz in uvoz vprašanj v različnih formatih z namenom vključevanja le-teh v dejavnost Moodle kviz. Nekatere formate smo že spoznali, v današnji novici pa si bomo ogledali, kako pripraviti vprašanja v Moodle XML formatu. Gre za format, ki nam omogoča izvoz in uvoz različnih tipov vprašanj, kot so vprašanja tipa več izbir, drži/ne drži, kratek odgovor, številčni odgovor, vprašanje tipa ujemanje, vprašanje esejskega tipa in druga. Za razliko od drugih formatov sintaksa XML formata spominja na HTML sintakso. V kolikor smo že uporabljali ali se srečali s HTML kodo, bomo pripravo vprašanj v XML formatu hitro osvojili.

Preden pa začnemo z oblikovanjem vprašanj si oglejmo nekaj osnovne sintakse XML formata. Kot boste opazili v nadaljevanju, vsak začetek ukaza zapišemo na način <oznaka> in ga zaključimo z </oznaka>.

Za delovanje kode in uspešen uvoz vprašanj v XML formatu v spletno učilnico Moodle je potrebno zgornje ukaze smiselno in pravilno ugnezditi. V  nadaljevanju si poglejmo, kako ukaze ugnezditi in pripraviti vprašanja v XML formatu. Predstavljamo priporočljiv postopek dodajanja ukazov, ki veljajo za vsa vprašanja, ne glede na tip vprašanja:

  1. najprej zapišemo začetni ukaz;
  2. nato dodamo ukaz za začetek kviza;
  3. znotraj ukaza za kviz lahko ugnezdimo več vprašanj različnih tipov;
  4. pri posameznem vprašanju določimo tip vprašanja;
  5. znotraj ukaza za vprašanje določenega tipa ugnezdimo ime in besedilo vprašanja;
  6. pri ukazu za besedilo vprašanja določimo tudi format besedila, ki vpliva na način prikaza besedila – privzet format je html.

Sedaj pa si poglejmo kako pripraviti ukaze za posamezen tip vprašanja, ki jih ugnezdimo v ukaz za dodajanje vprašanja.

Vprašanje tipa več izbir

Pri vprašanju tipa več izbir (type=”multichoice”) poleg imena in besedila vprašanja dodamo tudi več možnih odgovorov. Odgovore zapišemo znotraj ukaza <answer>, kjer določimo tudi točke z ukazom fraction. V našem primeru smo pravilen odgovor ovrendotili z 100 točkami, napačne pa z 0 točkami. Posameznemu odgovoru smo z ukazom <feedback> dodali tudi povratno informacijo, ki jo študent prejme v primeru, ko izbere določen odgovor. Z ukazom <shuffleanswers>1</shuffleanswers> smo omogočili premešanje odgovorov. V primeru, da si tega ne želimo, to zapišemo ukazom <shuffleanswers>0</shuffleanswers>. Ker gre za vprašanje, kjer je pravilen le en odgovor, smo z ukazom <single>true</single> omogočili izbiro le enega izmed ponujenih odgovorov. V primeru, da bi zapisali ukaz <single>false</single>, pa bi omogočili izbiro več ponujenih odgovorov. Odgovore lahko tudi označimo z vrednostmi, v našem primeru smo jih z ukazom <answernumbering>abc</answernumbering> označili z malimi tiskanimi črkami. Odgovore lahko označimo tudi z drugimi vrednostmi tako, da v ukazu namesto vrednosti abc zapišemo ABCD, 123 ali none v primeru, da odgovorov ne želimo označiti.

Vprašanje tipa drži/ne drži

Pri vprašanju drži/ne drži (type=”truefalse”) je potrebno z ukazom <answer> ugnezditi pravilno in napačno trditev ter jima z dodatkom fraction določiti število točk. V našem primeru je trditev »Drži.« pravilna in trditev »Ne drži.« napačna. Poljubno lahko dodamo tudi povratne informacije z ukazom <feedback>.

Vprašanje tipa kratek odgovor

Pri vprašanju tipa kratek odgovor (type=”shortanswer”) lahko z ukazom <answer> dodamo enega ali več odgovorov, ki jih bo sistem upošteval kot pravilne v primeru, če jih študenti navedejo. V našem primeru smo dodali dva pravilna odgovora in oba tudi ovrednotili z 100 točkami. Z ukazom <usecase>1</usecase> smo omogočili upoštevanje velikih in malih črk v podanem odgovoru študentov, kar lahko pride prav pri upoštevanju pravilnosti zapisa besed z malo ali veliko začetnico. V kolikor si ne želimo preverjati velikosti črk, v ukazu namesto vrednosti 1 zapišemo vrednost 0.

Vprašanje tipa številčni odgovor

Vprašanje tipa številčni odgovor (type=”numerical”) zapišemo s podobnimi ukazi kot pri vprašanju tipa kratki odgovor, le da v tem primeru z ukazom <text> določimo pravilen odgovor v obliki števila.

Vprašanje tipa ujemanje

Pri vprašanju tipa ujemanje (type=”matching”) je potrebno določiti pare vsebin, ki jih bodo študenti med seboj povezovali. Z ukazom <subquestion> določimo pare, znotraj katerega z ukazom <text> ugnezdimo vsebino, ki jo mora študent povezati z vsebino dodano z ukazom <answer>. V našem primeru imamo dodana dva para, lahko pa jih dodamo še več. Z ukazom <shuffleanswers>true</shuffleanswers> smo določili naključno premešanje parov. V kolikor si ne želimo premešati parov, v ukazu namesto vrednosti true zapišemo vrednost false. Pri vprašanju tipa ujemanje ni mogoče dodati ukaza za povratno informacijo.

Vprašanje esejskega tipa

Vprašanju esejskega tipa (type=”essay”) ni mogoče določiti pravilnega odgovora, zato je v tem primeru ukaz <text></text> prazen in tudi vrednost fraction je enaka 0.

Potem, ko zapišemo kodo na način, predstavljen zgoraj, je potrebno biti pozoren pri shranjevanju dokumenta. Zaradi posebnih znakov (znaki, ki niso znaki ASCII), ki jih vključujemo v besedilo vprašanja ali v možne odgovore, lahko pride do težav pri uvozu vprašanj v spletno učilnico Moodle. Da bi se temu izognili, moramo datoteko vedno shraniti v formatu UTF-8. Kako to naredimo si lahko ogledamo v videoposnetku v novici Aiken format za uvoz vprašanj v spletno učilnico moodle, s tem, da potem shranjeni datoteki spremenimo končnico v .xml format.

Da bi vam olajšali pripravo vprašanj v XML formatu, smo pripravili enostavno predlogo, s katero si lahko pomagate pri uvozu vprašanj. Sam uvoz vprašanj v spletno učilnico Moodle pa si lahko ogledate v novici Priprava predloge za uvoz vprašanj v Moodle in uvoz vprašanj.

Naročite se na naše e-novice...

… in bodite prvi obveščeni o dogajanju v Centru UL za uporabo IKT v pedagoškem procesu.