Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

CorrectWriting Auto-feedback question implementation: Difference between revisions

From MoodleDocs
No edit summary
No edit summary
Line 46: Line 46:
==How input is splitted==
==How input is splitted==


This tiny parts, that answer is split to are called tokens, which are smallest parts of answer, that have sense to split to. For each of them, teacher can supply a description, which gives a student information about, what are the information behind token (and also can be used to hide true token information, if student must learn about it). For natural languages, tokens can be words, symbols, and for programming languages they can be such as described in their lexical definitions.  
This tiny parts, that answer is split to, are called tokens, which are smallest parts of answer, that have sense to split to. For each of them, teacher can supply a description, which gives a student information about, what are the information behind token (and also can be used to hide true token information, if student must learn about it). For natural languages, tokens can be words, symbols, and for programming languages they can be such as described in lexical definition of formal language, which expression belongs to.  
Teacher can leave a token without description and his bare symbols will be used, when generating text about mistakes.
Teacher can leave a token without description and his bare symbols will be used, when generating text about mistakes.


==Editing CorrectWriting question type==
==Editing CorrectWriting question type==


TODO
When creating new CorrectWriting question type you will see the following form:
 
 
 


==Installing CorrectWriting question type==
==Installing CorrectWriting question type==

Revision as of 08:05, 29 November 2012

Note: This page is a work-in-progress. Feedback and suggested improvements are welcome. Please join the discussion on moodle.org or use the page comments.


Goal

This question type goal was to simplify report of student mistakes in a shortanswer question, when student is learning programming language or in simple cases of natural language learning, when student must write correct expression, and we should give him information about skipping some words or placing words in incorrect order. This also could be useful, when we don't give actual information about what words (or some kinds of symbols) was moved or absent in answer, but their meaning, thus forcing student to know what does this part of symbol means.

Examples

Please, consider the following tasks.

Function header in C language

Student must write simple function header for function, that is described naturally: void function(int abc, char def), with following descriptions of parts:

void
type of returned value
function
function name
(
bracket (or opening bracket for function arguments)
int
first argument type
abc
first argument name
,
argument list separator
char
second argument type
def
second argument name
)
bracket (or closing bracket for function arguments)

If student submits the following answer, like: void function(abc, def), question type will produce the following output:

first argument type was skipped
second argument type was skipped

English language sentence:

Student must write simple sentence, while learning foreign language: The cat ate the mouse, with following descriptions of parts

The
definite article
cat
subject
ate
verb
the
definite article
mouse
complement
.
sentence ending point

If student submits the following answer, like: The cat eat the mouse, question type will produce the following output:

"eat" is odd in response
verb is absent in response
sententence ending point is absent in response.

How input is splitted

This tiny parts, that answer is split to, are called tokens, which are smallest parts of answer, that have sense to split to. For each of them, teacher can supply a description, which gives a student information about, what are the information behind token (and also can be used to hide true token information, if student must learn about it). For natural languages, tokens can be words, symbols, and for programming languages they can be such as described in lexical definition of formal language, which expression belongs to. Teacher can leave a token without description and his bare symbols will be used, when generating text about mistakes.

Editing CorrectWriting question type

When creating new CorrectWriting question type you will see the following form:



Installing CorrectWriting question type

To install this question type, you need formal languages block and question type. Also you need a poas question type.

Just copy all of them in your Moodle installation folder, overwriting if need to and go to Site administration in web-interface, proceeding with the installation and you're done.