2006-08-11 19:29:47 +00:00
<?xml version="1.0" encoding="UTF-8" ?>
2006-08-12 23:03:59 +00:00
<XMLDB PATH= "mod/quiz/db" VERSION= "20060813" COMMENT= "XMLDB file for Moodle mod/quiz" >
2006-08-11 19:29:47 +00:00
<TABLES >
<TABLE NAME= "question_categories" COMMENT= "Categories are for grouping questions" NEXT= "question" >
<FIELDS >
<FIELD NAME= "id" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" SEQUENCE= "true" ENUM= "false" NEXT= "course" />
<FIELD NAME= "course" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "id" NEXT= "name" />
<FIELD NAME= "name" TYPE= "char" LENGTH= "255" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "course" NEXT= "info" />
<FIELD NAME= "info" TYPE= "text" LENGTH= "small" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "name" NEXT= "publish" />
<FIELD NAME= "publish" TYPE= "int" LENGTH= "4" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "info" NEXT= "stamp" />
<FIELD NAME= "stamp" TYPE= "char" LENGTH= "255" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "publish" NEXT= "parent" />
<FIELD NAME= "parent" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "stamp" NEXT= "sortorder" />
<FIELD NAME= "sortorder" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "999" SEQUENCE= "false" ENUM= "false" PREVIOUS= "parent" />
</FIELDS>
<KEYS >
<KEY NAME= "primary" TYPE= "primary" FIELDS= "id" COMMENT= "Primary key for question_categories" NEXT= "parent" />
<KEY NAME= "parent" TYPE= "foreign" FIELDS= "parent" REFTABLE= "question_categories" REFFIELDS= "id" COMMENT= "note that to make this recursive FK working someday, the parent field must be declared NULL" PREVIOUS= "primary" />
</KEYS>
<INDEXES >
<INDEX NAME= "course" UNIQUE= "false" FIELDS= "course" />
</INDEXES>
</TABLE>
<TABLE NAME= "question" COMMENT= "The questions themselves" PREVIOUS= "question_categories" NEXT= "question_answers" >
<FIELDS >
<FIELD NAME= "id" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" SEQUENCE= "true" ENUM= "false" NEXT= "category" />
<FIELD NAME= "category" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "id" NEXT= "parent" />
<FIELD NAME= "parent" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "category" NEXT= "name" />
<FIELD NAME= "name" TYPE= "char" LENGTH= "255" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "parent" NEXT= "questiontext" />
<FIELD NAME= "questiontext" TYPE= "text" LENGTH= "small" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "name" NEXT= "questiontextformat" />
<FIELD NAME= "questiontextformat" TYPE= "int" LENGTH= "2" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "questiontext" NEXT= "image" />
2006-08-12 23:03:59 +00:00
<FIELD NAME= "image" TYPE= "char" LENGTH= "255" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "questiontextformat" NEXT= "commentarytext" />
<FIELD NAME= "commentarytext" TYPE= "text" LENGTH= "small" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" COMMENT= "to store the question commentary" PREVIOUS= "image" NEXT= "defaultgrade" />
<FIELD NAME= "defaultgrade" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "1" SEQUENCE= "false" ENUM= "false" PREVIOUS= "commentarytext" NEXT= "penalty" />
2006-08-11 19:29:47 +00:00
<FIELD NAME= "penalty" TYPE= "float" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0.1" SEQUENCE= "false" ENUM= "false" PREVIOUS= "defaultgrade" NEXT= "qtype" />
<FIELD NAME= "qtype" TYPE= "char" LENGTH= "20" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "penalty" NEXT= "length" />
<FIELD NAME= "length" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "1" SEQUENCE= "false" ENUM= "false" PREVIOUS= "qtype" NEXT= "stamp" />
<FIELD NAME= "stamp" TYPE= "char" LENGTH= "255" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "length" NEXT= "version" />
<FIELD NAME= "version" TYPE= "char" LENGTH= "255" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "stamp" NEXT= "hidden" />
<FIELD NAME= "hidden" TYPE= "int" LENGTH= "1" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "version" />
</FIELDS>
<KEYS >
<KEY NAME= "primary" TYPE= "primary" FIELDS= "id" COMMENT= "Primary key for question" NEXT= "category" />
<KEY NAME= "category" TYPE= "foreign" FIELDS= "category" REFTABLE= "question_categories" REFFIELDS= "id" PREVIOUS= "primary" NEXT= "parent" />
<KEY NAME= "parent" TYPE= "foreign" FIELDS= "parent" REFTABLE= "question" REFFIELDS= "id" COMMENT= "note that to make this recursive FK working someday, the parent field must be declared NULL" PREVIOUS= "category" />
</KEYS>
</TABLE>
<TABLE NAME= "question_answers" COMMENT= "Answers, with a fractional grade (0-1) and feedback" PREVIOUS= "question" NEXT= "question_dataset_definitions" >
<FIELDS >
<FIELD NAME= "id" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" SEQUENCE= "true" ENUM= "false" NEXT= "question" />
<FIELD NAME= "question" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "id" NEXT= "answer" />
<FIELD NAME= "answer" TYPE= "text" LENGTH= "small" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "question" NEXT= "fraction" />
<FIELD NAME= "fraction" TYPE= "float" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "answer" NEXT= "feedback" />
<FIELD NAME= "feedback" TYPE= "text" LENGTH= "small" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "fraction" />
</FIELDS>
<KEYS >
<KEY NAME= "primary" TYPE= "primary" FIELDS= "id" COMMENT= "Primary key for question_answers" NEXT= "question" />
<KEY NAME= "question" TYPE= "foreign" FIELDS= "question" REFTABLE= "question" REFFIELDS= "id" PREVIOUS= "primary" />
</KEYS>
</TABLE>
<TABLE NAME= "question_dataset_definitions" COMMENT= "Organises and stores properties for dataset items" PREVIOUS= "question_answers" NEXT= "question_dataset_items" >
<FIELDS >
<FIELD NAME= "id" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" SEQUENCE= "true" ENUM= "false" NEXT= "category" />
<FIELD NAME= "category" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "id" NEXT= "name" />
<FIELD NAME= "name" TYPE= "char" LENGTH= "255" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "category" NEXT= "type" />
<FIELD NAME= "type" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "name" NEXT= "options" />
<FIELD NAME= "options" TYPE= "char" LENGTH= "255" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "type" NEXT= "itemcount" />
<FIELD NAME= "itemcount" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "options" />
</FIELDS>
<KEYS >
2006-08-12 23:03:59 +00:00
<KEY NAME= "primary" TYPE= "primary" FIELDS= "id" COMMENT= "Primary key for question_dataset_definitions" NEXT= "category" />
<KEY NAME= "category" TYPE= "foreign" FIELDS= "category" REFTABLE= "question_categories" REFFIELDS= "id" PREVIOUS= "primary" />
2006-08-11 19:29:47 +00:00
</KEYS>
</TABLE>
<TABLE NAME= "question_dataset_items" COMMENT= "Individual dataset items" PREVIOUS= "question_dataset_definitions" NEXT= "question_datasets" >
<FIELDS >
<FIELD NAME= "id" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" SEQUENCE= "true" ENUM= "false" NEXT= "definition" />
<FIELD NAME= "definition" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "id" NEXT= "number" />
<FIELD NAME= "number" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "definition" NEXT= "value" />
<FIELD NAME= "value" TYPE= "char" LENGTH= "255" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "number" />
</FIELDS>
<KEYS >
<KEY NAME= "primary" TYPE= "primary" FIELDS= "id" COMMENT= "Primary key for question_dataset_items" />
</KEYS>
<INDEXES >
<INDEX NAME= "definition" UNIQUE= "false" FIELDS= "definition" />
</INDEXES>
</TABLE>
<TABLE NAME= "question_datasets" COMMENT= "Many-many relation between questions and dataset definitions" PREVIOUS= "question_dataset_items" NEXT= "question_numerical_units" >
<FIELDS >
<FIELD NAME= "id" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" SEQUENCE= "true" ENUM= "false" NEXT= "question" />
<FIELD NAME= "question" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "id" NEXT= "datasetdefinition" />
<FIELD NAME= "datasetdefinition" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "question" />
</FIELDS>
<KEYS >
<KEY NAME= "primary" TYPE= "primary" FIELDS= "id" COMMENT= "Primary key for question_datasets" NEXT= "question" />
<KEY NAME= "question" TYPE= "foreign" FIELDS= "question" REFTABLE= "question" REFFIELDS= "id" PREVIOUS= "primary" NEXT= "datasetdefinition" />
<KEY NAME= "datasetdefinition" TYPE= "foreign" FIELDS= "datasetdefinition" REFTABLE= "question_dataset_definitions" REFFIELDS= "id" PREVIOUS= "question" />
</KEYS>
<INDEXES >
<INDEX NAME= "question-datasetdefinition" UNIQUE= "false" FIELDS= "question, datasetdefinition" />
</INDEXES>
</TABLE>
<TABLE NAME= "question_numerical_units" COMMENT= "Optional unit options for numerical questions" PREVIOUS= "question_datasets" NEXT= "question_attempts" >
<FIELDS >
<FIELD NAME= "id" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" SEQUENCE= "true" ENUM= "false" NEXT= "question" />
<FIELD NAME= "question" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "id" NEXT= "multiplier" />
<FIELD NAME= "multiplier" TYPE= "number" LENGTH= "40" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "1.00000000000000000000" SEQUENCE= "false" ENUM= "false" DECIMALS= "20" PREVIOUS= "question" NEXT= "unit" />
<FIELD NAME= "unit" TYPE= "char" LENGTH= "50" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "multiplier" />
</FIELDS>
<KEYS >
<KEY NAME= "primary" TYPE= "primary" FIELDS= "id" COMMENT= "Primary key for question_numerical_units" NEXT= "question" />
<KEY NAME= "question" TYPE= "foreign" FIELDS= "question" REFTABLE= "question" REFFIELDS= "id" PREVIOUS= "primary" />
</KEYS>
</TABLE>
<TABLE NAME= "question_attempts" COMMENT= "Student attempts. This table gets extended by the modules" PREVIOUS= "question_numerical_units" NEXT= "question_states" >
<FIELDS >
<FIELD NAME= "id" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" SEQUENCE= "true" ENUM= "false" NEXT= "modulename" />
<FIELD NAME= "modulename" TYPE= "char" LENGTH= "20" NOTNULL= "true" DEFAULT= "quiz" SEQUENCE= "false" ENUM= "false" PREVIOUS= "id" />
</FIELDS>
<KEYS >
<KEY NAME= "primary" TYPE= "primary" FIELDS= "id" COMMENT= "Primary key for question_attempts" />
</KEYS>
</TABLE>
<TABLE NAME= "question_states" COMMENT= "Stores user responses to an attempt, and percentage grades" PREVIOUS= "question_attempts" NEXT= "question_sessions" >
<FIELDS >
<FIELD NAME= "id" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" SEQUENCE= "true" ENUM= "false" NEXT= "attempt" />
<FIELD NAME= "attempt" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "id" NEXT= "question" />
<FIELD NAME= "question" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "attempt" NEXT= "originalquestion" />
<FIELD NAME= "originalquestion" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "question" NEXT= "seq_number" />
<FIELD NAME= "seq_number" TYPE= "int" LENGTH= "6" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "originalquestion" NEXT= "answer" />
<FIELD NAME= "answer" TYPE= "text" LENGTH= "small" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "seq_number" NEXT= "timestamp" />
<FIELD NAME= "timestamp" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "answer" NEXT= "event" />
<FIELD NAME= "event" TYPE= "int" LENGTH= "4" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "timestamp" NEXT= "grade" />
<FIELD NAME= "grade" TYPE= "float" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "event" NEXT= "raw_grade" />
<FIELD NAME= "raw_grade" TYPE= "float" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "grade" NEXT= "penalty" />
<FIELD NAME= "penalty" TYPE= "float" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "raw_grade" />
</FIELDS>
<KEYS >
<KEY NAME= "primary" TYPE= "primary" FIELDS= "id" COMMENT= "Primary key for question_states" NEXT= "attempt" />
<KEY NAME= "attempt" TYPE= "foreign" FIELDS= "attempt" REFTABLE= "question_attempts" REFFIELDS= "id" PREVIOUS= "primary" NEXT= "question" />
<KEY NAME= "question" TYPE= "foreign" FIELDS= "question" REFTABLE= "question" REFFIELDS= "id" PREVIOUS= "attempt" />
</KEYS>
</TABLE>
<TABLE NAME= "question_sessions" COMMENT= "Gives ids of the newest open and newest graded states" PREVIOUS= "question_states" NEXT= "quiz" >
<FIELDS >
<FIELD NAME= "id" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" SEQUENCE= "true" ENUM= "false" NEXT= "attemptid" />
<FIELD NAME= "attemptid" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "id" NEXT= "questionid" />
<FIELD NAME= "questionid" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "attemptid" NEXT= "newest" />
<FIELD NAME= "newest" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "questionid" NEXT= "newgraded" />
<FIELD NAME= "newgraded" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "newest" NEXT= "sumpenalty" />
<FIELD NAME= "sumpenalty" TYPE= "float" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "newgraded" NEXT= "comment" />
<FIELD NAME= "comment" TYPE= "text" LENGTH= "small" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "sumpenalty" />
</FIELDS>
<KEYS >
<KEY NAME= "primary" TYPE= "primary" FIELDS= "id" COMMENT= "Primary key for question_sessions" NEXT= "attemptid" />
<KEY NAME= "attemptid" TYPE= "foreign" FIELDS= "attemptid" REFTABLE= "question_attempts" REFFIELDS= "id" PREVIOUS= "primary" NEXT= "questionid" />
<KEY NAME= "questionid" TYPE= "foreign" FIELDS= "questionid" REFTABLE= "question" REFFIELDS= "id" PREVIOUS= "attemptid" NEXT= "newest" />
2006-08-12 23:03:59 +00:00
<KEY NAME= "newest" TYPE= "foreign" FIELDS= "newest" REFTABLE= "question_states" REFFIELDS= "id" PREVIOUS= "questionid" NEXT= "newgraded" />
<KEY NAME= "newgraded" TYPE= "foreign" FIELDS= "newgraded" REFTABLE= "question_states" REFFIELDS= "id" PREVIOUS= "newest" />
2006-08-11 19:29:47 +00:00
</KEYS>
<INDEXES >
<INDEX NAME= "attemptid-questionid" UNIQUE= "true" FIELDS= "attemptid, questionid" />
</INDEXES>
</TABLE>
<TABLE NAME= "quiz" COMMENT= "Main information about each quiz" PREVIOUS= "question_sessions" NEXT= "quiz_attempts" >
<FIELDS >
<FIELD NAME= "id" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" SEQUENCE= "true" ENUM= "false" NEXT= "course" />
<FIELD NAME= "course" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "id" NEXT= "name" />
<FIELD NAME= "name" TYPE= "char" LENGTH= "255" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "course" NEXT= "intro" />
<FIELD NAME= "intro" TYPE= "text" LENGTH= "small" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "name" NEXT= "timeopen" />
<FIELD NAME= "timeopen" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "intro" NEXT= "timeclose" />
<FIELD NAME= "timeclose" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "timeopen" NEXT= "optionflags" />
<FIELD NAME= "optionflags" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "timeclose" NEXT= "penaltyscheme" />
<FIELD NAME= "penaltyscheme" TYPE= "int" LENGTH= "4" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "optionflags" NEXT= "attempts" />
<FIELD NAME= "attempts" TYPE= "int" LENGTH= "6" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "penaltyscheme" NEXT= "attemptonlast" />
<FIELD NAME= "attemptonlast" TYPE= "int" LENGTH= "4" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "attempts" NEXT= "grademethod" />
<FIELD NAME= "grademethod" TYPE= "int" LENGTH= "4" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "1" SEQUENCE= "false" ENUM= "false" PREVIOUS= "attemptonlast" NEXT= "decimalpoints" />
<FIELD NAME= "decimalpoints" TYPE= "int" LENGTH= "4" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "2" SEQUENCE= "false" ENUM= "false" PREVIOUS= "grademethod" NEXT= "review" />
<FIELD NAME= "review" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "decimalpoints" NEXT= "questionsperpage" />
<FIELD NAME= "questionsperpage" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "review" NEXT= "shufflequestions" />
<FIELD NAME= "shufflequestions" TYPE= "int" LENGTH= "4" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "questionsperpage" NEXT= "shuffleanswers" />
<FIELD NAME= "shuffleanswers" TYPE= "int" LENGTH= "4" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "shufflequestions" NEXT= "questions" />
<FIELD NAME= "questions" TYPE= "text" LENGTH= "small" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "shuffleanswers" NEXT= "sumgrades" />
<FIELD NAME= "sumgrades" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "questions" NEXT= "grade" />
<FIELD NAME= "grade" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "sumgrades" NEXT= "timecreated" />
<FIELD NAME= "timecreated" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "grade" NEXT= "timemodified" />
<FIELD NAME= "timemodified" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "timecreated" NEXT= "timelimit" />
<FIELD NAME= "timelimit" TYPE= "int" LENGTH= "2" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "timemodified" NEXT= "password" />
<FIELD NAME= "password" TYPE= "char" LENGTH= "255" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "timelimit" NEXT= "subnet" />
<FIELD NAME= "subnet" TYPE= "char" LENGTH= "255" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "password" NEXT= "popup" />
<FIELD NAME= "popup" TYPE= "int" LENGTH= "4" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "subnet" NEXT= "delay1" />
<FIELD NAME= "delay1" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "popup" NEXT= "delay2" />
<FIELD NAME= "delay2" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "delay1" />
</FIELDS>
<KEYS >
<KEY NAME= "primary" TYPE= "primary" FIELDS= "id" COMMENT= "Primary key for quiz" />
</KEYS>
<INDEXES >
<INDEX NAME= "course" UNIQUE= "false" FIELDS= "course" />
</INDEXES>
</TABLE>
<TABLE NAME= "quiz_attempts" COMMENT= "Stores various attempts on a quiz" PREVIOUS= "quiz" NEXT= "quiz_grades" >
<FIELDS >
<FIELD NAME= "id" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" SEQUENCE= "true" ENUM= "false" NEXT= "uniqueid" />
<FIELD NAME= "uniqueid" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "id" NEXT= "quiz" />
<FIELD NAME= "quiz" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "uniqueid" NEXT= "userid" />
<FIELD NAME= "userid" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "quiz" NEXT= "attempt" />
<FIELD NAME= "attempt" TYPE= "int" LENGTH= "6" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "userid" NEXT= "sumgrades" />
<FIELD NAME= "sumgrades" TYPE= "float" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "attempt" NEXT= "timestart" />
<FIELD NAME= "timestart" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "sumgrades" NEXT= "timefinish" />
<FIELD NAME= "timefinish" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "timestart" NEXT= "timemodified" />
<FIELD NAME= "timemodified" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "timefinish" NEXT= "layout" />
<FIELD NAME= "layout" TYPE= "text" LENGTH= "small" NOTNULL= "true" SEQUENCE= "false" ENUM= "false" PREVIOUS= "timemodified" NEXT= "preview" />
<FIELD NAME= "preview" TYPE= "int" LENGTH= "3" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "layout" />
</FIELDS>
<KEYS >
<KEY NAME= "primary" TYPE= "primary" FIELDS= "id" COMMENT= "Primary key for quiz_attempts" NEXT= "uniqueid" />
2006-08-12 21:40:30 +00:00
<KEY NAME= "uniqueid" TYPE= "foreign-unique" FIELDS= "uniqueid" REFTABLE= "question_attempts" REFFIELDS= "id" PREVIOUS= "primary" NEXT= "quiz" />
2006-08-11 19:29:47 +00:00
<KEY NAME= "quiz" TYPE= "foreign" FIELDS= "quiz" REFTABLE= "quiz" REFFIELDS= "id" PREVIOUS= "uniqueid" />
</KEYS>
<INDEXES >
<INDEX NAME= "userid" UNIQUE= "false" FIELDS= "userid" />
</INDEXES>
</TABLE>
<TABLE NAME= "quiz_grades" COMMENT= "Final quiz grade (may be best of several attempts)" PREVIOUS= "quiz_attempts" NEXT= "quiz_question_instances" >
<FIELDS >
<FIELD NAME= "id" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" SEQUENCE= "true" ENUM= "false" NEXT= "quiz" />
<FIELD NAME= "quiz" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "id" NEXT= "userid" />
<FIELD NAME= "userid" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "quiz" NEXT= "grade" />
<FIELD NAME= "grade" TYPE= "float" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "userid" NEXT= "timemodified" />
<FIELD NAME= "timemodified" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "grade" />
</FIELDS>
<KEYS >
<KEY NAME= "primary" TYPE= "primary" FIELDS= "id" COMMENT= "Primary key for quiz_grades" NEXT= "quiz" />
<KEY NAME= "quiz" TYPE= "foreign" FIELDS= "quiz" REFTABLE= "quiz" REFFIELDS= "id" PREVIOUS= "primary" />
</KEYS>
<INDEXES >
<INDEX NAME= "userid" UNIQUE= "false" FIELDS= "userid" />
</INDEXES>
</TABLE>
<TABLE NAME= "quiz_question_instances" COMMENT= "The grade for a question in a quiz" PREVIOUS= "quiz_grades" NEXT= "quiz_question_versions" >
<FIELDS >
<FIELD NAME= "id" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" SEQUENCE= "true" ENUM= "false" NEXT= "quiz" />
<FIELD NAME= "quiz" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "id" NEXT= "question" />
<FIELD NAME= "question" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "quiz" NEXT= "grade" />
<FIELD NAME= "grade" TYPE= "int" LENGTH= "6" NOTNULL= "true" UNSIGNED= "false" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "question" />
</FIELDS>
<KEYS >
<KEY NAME= "primary" TYPE= "primary" FIELDS= "id" COMMENT= "Primary key for quiz_question_instances" NEXT= "quiz" />
<KEY NAME= "quiz" TYPE= "foreign" FIELDS= "quiz" REFTABLE= "quiz" REFFIELDS= "id" PREVIOUS= "primary" NEXT= "question" />
<KEY NAME= "question" TYPE= "foreign" FIELDS= "question" REFTABLE= "question" REFFIELDS= "id" PREVIOUS= "quiz" />
</KEYS>
</TABLE>
<TABLE NAME= "quiz_question_versions" COMMENT= "quiz_question_versions table retrofitted from MySQL" PREVIOUS= "quiz_question_instances" >
<FIELDS >
<FIELD NAME= "id" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" SEQUENCE= "true" ENUM= "false" NEXT= "quiz" />
<FIELD NAME= "quiz" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "id" NEXT= "oldquestion" />
<FIELD NAME= "oldquestion" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "quiz" NEXT= "newquestion" />
<FIELD NAME= "newquestion" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "oldquestion" NEXT= "originalquestion" />
<FIELD NAME= "originalquestion" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "newquestion" NEXT= "userid" />
<FIELD NAME= "userid" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "originalquestion" NEXT= "timestamp" />
<FIELD NAME= "timestamp" TYPE= "int" LENGTH= "10" NOTNULL= "true" UNSIGNED= "true" DEFAULT= "0" SEQUENCE= "false" ENUM= "false" PREVIOUS= "userid" />
</FIELDS>
<KEYS >
<KEY NAME= "primary" TYPE= "primary" FIELDS= "id" COMMENT= "Primary key for quiz_question_versions" NEXT= "quiz" />
<KEY NAME= "quiz" TYPE= "foreign" FIELDS= "quiz" REFTABLE= "quiz" REFFIELDS= "id" PREVIOUS= "primary" NEXT= "oldquestion" />
<KEY NAME= "oldquestion" TYPE= "foreign" FIELDS= "oldquestion" REFTABLE= "question" REFFIELDS= "id" PREVIOUS= "quiz" NEXT= "newquestion" />
<KEY NAME= "newquestion" TYPE= "foreign" FIELDS= "newquestion" REFTABLE= "question" REFFIELDS= "id" PREVIOUS= "oldquestion" NEXT= "originalquestion" />
<KEY NAME= "originalquestion" TYPE= "foreign" FIELDS= "originalquestion" REFTABLE= "question" REFFIELDS= "id" PREVIOUS= "newquestion" />
</KEYS>
</TABLE>
</TABLES>
<STATEMENTS >
<STATEMENT NAME= "insert log_display" TYPE= "insert" TABLE= "log_display" COMMENT= "Initial insert of records on table log_display" >
<SENTENCES >
<SENTENCE TEXT= "(module, action, mtable, field) VALUES ('quiz', 'add', 'quiz', 'name')" />
<SENTENCE TEXT= "(module, action, mtable, field) VALUES ('quiz', 'update', 'quiz', 'name')" />
<SENTENCE TEXT= "(module, action, mtable, field) VALUES ('quiz', 'view', 'quiz', 'name')" />
<SENTENCE TEXT= "(module, action, mtable, field) VALUES ('quiz', 'report', 'quiz', 'name')" />
<SENTENCE TEXT= "(module, action, mtable, field) VALUES ('quiz', 'attempt', 'quiz', 'name')" />
<SENTENCE TEXT= "(module, action, mtable, field) VALUES ('quiz', 'submit', 'quiz', 'name')" />
<SENTENCE TEXT= "(module, action, mtable, field) VALUES ('quiz', 'review', 'quiz', 'name')" />
<SENTENCE TEXT= "(module, action, mtable, field) VALUES ('quiz', 'editquestions', 'quiz', 'name')" />
<SENTENCE TEXT= "(module, action, mtable, field) VALUES ('quiz', 'preview', 'quiz', 'name')" />
<SENTENCE TEXT= "(module, action, mtable, field) VALUES ('quiz', 'start attempt', 'quiz', 'name')" />
<SENTENCE TEXT= "(module, action, mtable, field) VALUES ('quiz', 'close attempt', 'quiz', 'name')" />
<SENTENCE TEXT= "(module, action, mtable, field) VALUES ('quiz', 'continue attempt', 'quiz', 'name')" />
</SENTENCES>
</STATEMENT>
</STATEMENTS>
</XMLDB>