File: reply.phtml

package info (click to toggle)
wims 2%3A4.29a%2Bdfsg1-3
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 185,704 kB
  • sloc: xml: 366,687; javascript: 120,570; ansic: 62,341; java: 62,170; sh: 7,744; perl: 3,937; yacc: 3,217; cpp: 1,915; lex: 1,805; makefile: 1,084; lisp: 914; pascal: 601; python: 520; php: 318; asm: 7
file content (217 lines) | stat: -rw-r--r-- 9,772 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
!set typelist1=!trim\
default,Auto,automatic determination of some basic types\
raw,Raw text,control of comparison by options\
numeric,Number, with tolerance of precision\
function,Numerical function, function with numerical tests\
equation,Numerical equation,equation with numerical tests\
exp|algexp litexp formal,Mathematical expression, with formal comparison\
text|case nocase,Text, words or sentences\
multiple|checkbox click menu radio mark flashcard multipleclick,Controlable multiple choices,buttons or menus\

!set typelist2=!trim\
atext,Approximative text, with identification of singular and plural etc.\
chemformula,Raw formula of a molecule,in chemistry\
chemdraw,Draw a molecule\
chemclick,Select atoms or bonds in a molecule\
chemeq,Chemical equation, with balance analysis\
chset,Set of characters,\
clickfill|clickfill dragfill,Drag-and-drop objets,text and image\
clicktile,Click and color tiles,\
clock,Clock\
complex,Complex number,comparison is done numerically\
compose,Compose, using given components\
coord,Click on image, recognition of coordinates and various regions\
correspond,Correspondence, establish the correspondence between pairs of objects\
crossword,Crosswords\
chessgame,Dplacement de pices sur un chiquier\
geogebra,Dynamic geometry,use applet GeoGebra\
jmolclick,Click on 3D atoms, use applet Jmol\
jsxgraph,Dynamic geometry,use JSXGraph\
jsxgraphcurve, JSXgraph Draw, permettant des tracs avec des formes prdfinies ou libres\
keyboard,Text, with keyboard\
matrix,Matrix, mathematical\
numexp,Rational numbers, fractional writing\
puzzle,Make in order an image, as in a puzzle\
range,Number within a given range, anything within the range is accepted\
reorder,Reordering, given list of objects\
set|set fset aset,Finite set,literal, formal or approximative\
sigunits,Sigunits,number with unit and significant digits\
symtext,Symtext,advanced tool of text identification\
units,Number with unit, for physics\
vector,Vector,formal comparison of components\
wlist,List of words,\


!set namelist=Basic types, Specific or advanced types
!set symtextlist=text atext raw compose

<h2>User replies to an exercise</h2>

There are two basic ways in which an OEF exercise accepts user replies:
multiple choices and freestyle replies. User answers will be analyzed
according to the nature of the types. It is also possible to show
!href cmd=help&special_parm=feedback feedbacks
 to the user when the answer meeds a specified condition (usually to warn a
typical error).

<h3>Multiple choices</h3>
<p>A multiple choice is defined by giving a list of good choices (one or
several) and another list of bad choices.</p>
<p>Up to $choicelim simultaneous multiple choice questions can be asked for
one exercise, under the current implementation. The number of good and bad
choices within one multiple choice question is unlimited (except a limit on
the length of the string imposed by WIMS).</p>
<p>See
!href cmd=help&special_parm=oef help on OEF format
 for the syntax to define a multiple choice.</p>

<h3 id="freestyle">Freestyle answers</h3>
<p>A freestyle answer is one which is typed by the user.
  Up to $answerlim simultaneous freestyle answers can be asked for one
  exercise, under the current implementation.</p>
  The syntax is as follows:
<code>
\answer{Text}{\reponse}{type=...}{option=...}{weight=...}
</code>
<p>The last 2 fields are optional.
The length of <span class="tt">Text</span> is limited
to $max_promptlen characters.
</p>
<h3>The parameter <span class="tt wims_code_words">type</span></h3>
<p>
Each freestyle answer can independently take one of the following types.
</p>
!for k=1 to 2
 <h4>$(namelist[$k])</h4>
 !set n=!linecnt $(typelist$k)
 <ul>
 !for j=1 to $n
  !set l=!line $j of $(typelist$k)
  !distribute item $l into name,title
  !set desc=!item 3 to -1 of $l
  !set name=!replace internal | by , in $name
  !set name1=!item 2 to -1 of $name
  !set name=!item 1 of $name
  !default name1=$name
  !if $name isitemof $special_parm or all isitemof $special_parm
   <li id="_$name">
   !read help/anstype/$name.phtml
   !if $name iswordof $symtextlist
    <p><b>Remark</b>.
    This type of reply accepts the symtext option. If the word
    <span class="tt wims_code_words">symtext</span> is declared in the option of the reply, the analysis of
    the reply will be exactly as for
    !href cmd=help&special_parm=reply,symtext#_symtext symtext
, in particular with no preliminary processing of the texts. And all the
symtext options will be understood in this case.
    </p>
   !endif
  !else
   <li>
   !href cmd=help&special_parm=reply,$name#_$name $title
   (<span class="tt wims_code_words">$name1</span>) $desc.
  !endif
  </li>
 !next j
 </ul>
!next i

!read help/$lang/embedans.phtml

<h3 id="weight">The optional parameter <span class="tt wims_code_words">weight</span></h3>

It is possible to give a weight to answers.
<p>
Example :
</p>
<pre>\answer{}{1}{type=numeric}{weight=8}
\answer{}{1}{type=numeric}{weight=2}
</pre>
<p>
Le niveau de svrit  sera aussi pris en compte lors du
calcul fait et le pourcentage sera pris sur un pourcentage fix
par le niveau de svrit.
</p><p>
One can put variables in <span class="tt wims_code_words">weight</span>
if they are defined before <span class="tt wims_code_variable">\statement</span>.

<p>Example :</p>
<pre>
\text{w = \t = 1 ? 1 : 2}
\answer{}{1}{type=numeric}{weight=\w}
\answer{}{1}{type=numeric}{weight=3}
</pre>

<h3 id="option">Le paramtre optionnel <span class="tt wims_code_words">option</span></h3>
 Dans le cas de plusieurs options, elles sont spares par des espaces.
 For example, <span class="tt wims_code_words">option=split noanalyzeprint</span>.

Les options possibles  la suite d'une instruction <span class="tt wims_code_variable">answer</span>
ou <span class="tt wims_code_variable">condition</span> sont
<ul>
  <li><span class="tt wims_code_words">option=default=" "</span>: The option <span class="tt wims_code_words">default</span> is common for all free answers :
    This option can take
    the form <span class="tt wims_code_words">default="default_value"</span>. If the
    user gives an empty reply, it is the default_value that will take place.
    Un message d'avertissement s'affiche au moment o la rponse est envoye
    que l'on peut supprimer en rajoutant
    <span class="tt wims_code_words">nocheck</span> dans les mots d'option.
  </li><li>
    <span class="tt wims_code_words">option=split</span>: In case of type <span class="tt wims_code_words">correspond</span>, <span class="tt wims_code_words">checkbox</span> or <span class="tt wims_code_words">mark</span>,
    there will be partial score.
  </li><li>
    <span class="tt wims_code_words">option=nonstop</span> : In case of step exercises,
    following questions are asked even if the answer is false.
  </li>
  <li><span class="tt wims_code_words">option=noanalyzeprint</span>: Le texte automatique d'analyse de rponses n'est
    pas affich. C'est donc  l'auteur de l'exercice de fournir un feedback convenable.
    Cela est utile dans certains types comme le type <span class="tt wims_code_words">mark</span> o le texte automatique
    est souvent inadquat. Le score subsiste ainsi que l'indication sur la justesse de la rponse.
  </li><li>
    Following the instruction <span class="tt wims_code_words">condition</span>,
    <span class="tt wims_code_words">option=hide</span>: The condition is used to analyze the
    answer but will not be printed.
  </li>
</ul>
Other options are usable in particular answer types. For precision, return to
 the documentation of the answer type.
!read help/option.phtml

<h2>Testing conditions</h2>
<p>Under certain circumstances, it is desired that freestyle answers be tested
by special conditions (questions with multiple good answers, exercises
asking for examples, answers determined by inequalities, etc). This can be
  done in the following way.</p> <p>
If the good answer to a freestyle question is an undefined variable, the
answer to this question will be fed into this variable. The latter can then
be used to implement testing conditions. The score given to the exercise is
then determined by the number of testing conditions which are met, rather
than the number of answers which meet the good answers.
</p><p>
Up to $condlim simultaneous conditions can be defined for one
exercise, under the current implementation. The syntax is as follows.
</p><pre>
\condition{prompt text}{testing conditions}{weight=...}
</pre>
(The last field is optional.)
<p>
Here are some examples of testing conditions. (<span class="tt wims_code_variable">ans1</span> and
<span class="tt wims_code_variable">ans2</span> are undefined variables appearing in freestyle answers, as
described above.)
!href target=wims_mhelp cmd=help&special_parm=if Complete list of relations
</p>
$table_header
$table_hdtr<th>Condition</th><th>meaning</th></tr>
$table_tr<td><tt class="wims_code_variable">ans1>=0 and \ans1<=1</tt></td>
    <td>Good if <span class="tt wims_code_words">ans1</span> is within the interval [0,1].</td></tr>
$table_tr<td class="tt wims_code_variable">ans1=1 or \ans1=3 or \ans1=5</td>
    <td>Good if <span class="tt wims_code_words">ans1</span> is 1, 3 or 5.</td></tr>
$table_tr<td class="tt wims_code_words">(\ans1)*(\ans2)=6 and (\ans1)+(\ans2)=5</td>
    <td>Good if <span class="tt wims_code_words">ans1</span> and <span class="tt wims_code_words">ans2</span> are the two
    roots of the polynomial x<sup>2</sup>-5x+6.</td></tr>
$table_tr<td class="tt wims_code_words">sin(\ans1)=0</td>
    <td>Good if <span class="tt wims_code_words">ans1</span> is a multiple of $m_pi.</td></tr>
$table_end
<p>See
!href cmd=help&special_parm=oef help on oef format
 for the syntax for defining replies.</p>