[LON-CAPA-cvs] cvs: loncom /html/adm/help/tex adaptive_hints.tex

raeburn raeburn at source.lon-capa.org
Mon Aug 5 10:35:15 EDT 2013


raeburn		Mon Aug  5 14:35:15 2013 EDT

  Modified files:              
    /loncom/html/adm/help/tex	adaptive_hints.tex 
  Log:
  - Replace \textless and \textgreater which are not supported by
    lontexconvert::tth_converted().
  - Remove some extra whitespace inherited from original help documented
    created for FAQ-o-matic.
  - Fix double quotes.
  - Remove commentary from first verbatim block in Radiobutton Hint condition
    section.
  
  
-------------- next part --------------
Index: loncom/html/adm/help/tex/adaptive_hints.tex
diff -u loncom/html/adm/help/tex/adaptive_hints.tex:1.3 loncom/html/adm/help/tex/adaptive_hints.tex:1.4
--- loncom/html/adm/help/tex/adaptive_hints.tex:1.3	Fri Jul 12 03:02:38 2013
+++ loncom/html/adm/help/tex/adaptive_hints.tex	Mon Aug  5 14:35:15 2013
@@ -1,6 +1,6 @@
 \label{adaptive_hints}
 \index{hints}\index{conditional hints}\index{adaptive hints}
-Hints are placed within \textless hintgroup \textgreater \textless \textbackslash hintgroup\textgreater tags. The first part of the hint is the condition, which includes a specification of the foil(s) and foil answer(s) required to trigger the hint. The answers specified in the hint condition are compared with the user's submission, and if the condition is met, the hint action included in the conditional hint block will be executed (for example this could be the display of a block of text). You can set multiple hint conditions for a particular problem. Hint conditions are identified by a name. The corresponding hint action includes this hint condition name in the "on" parameter. When a hint condition evaluates to true, the corresponding hint action is triggered. Besides providing hint actions within \textless hintpart on="NAME" \textgreater\textless /hintpart \textgreater tags for each named (NAME) hint condition, a hint can be designated for display if none of the conditio!
 nal hints evaluate to true. The default hint is not displayed if the conditions were met for any of the conditional hints. The default hint action is included between \textless hintpart on="default" \textgreater\textless /hintpart \textgreater tags.
+Hints are placed within $<$hintgroup$>$$<$/hintgroup$>$ tags. The first part of the hint is the condition, which includes a specification of the foil(s) and foil answer(s) required to trigger the hint. The answers specified in the hint condition are compared with the user's submission, and if the condition is met, the hint action included in the conditional hint block will be executed (for example this could be the display of a block of text). You can set multiple hint conditions for a particular problem. Hint conditions are identified by a name. The corresponding hint action includes this hint condition name in the ``on'' parameter. When a hint condition evaluates to true, the corresponding hint action is triggered. Besides providing hint actions within $<$hintpart on="NAME"$>$$<$/hintpart$>$ tags for each named (NAME) hint condition, a hint can be designated for display if none of the conditional hints evaluate to true. The default hint is not displayed if the conditions !
 were met for any of the conditional hints. The default hint action is included between $<$hintpart on=``default''$>$$<$/hintpart$>$ tags.
 There are five types of hint condition:
 
 \begin{itemize}
@@ -15,9 +15,9 @@
 \begin{enumerate}
 \item Formula Hint condition
 
-The formulahint tag takes three parameters: answer, name, and samples. The "name" is the unique name given to the hint condition. The formula answer for which you wish to provide conditional is included in the answer parameter. The samples parameter includes the points (or range of points) over which sampling of the student's submitted answer and the formula included in the formula hint answer parameter are to be compared. The syntax is the same as used to specify sampling points in the samples parameter of the formula reponse tag itself. The formula submitted by the student is evaluated at the sample points for the hint and the calculated values are compared with the corresponding values determined by evaluating the "hint" answer at the same sampling points. A close correspondence between the two sets of values will trigger the hint action specified in the \textless hintpart \textgreater tag.
+The formulahint tag takes three parameters: answer, name, and samples. The ``name'' is the unique name given to the hint condition. The formula answer for which you wish to provide conditional is included in the answer parameter. The samples parameter includes the points (or range of points) over which sampling of the student's submitted answer and the formula included in the formula hint answer parameter are to be compared. The syntax is the same as used to specify sampling points in the samples parameter of the formula reponse tag itself. The formula submitted by the student is evaluated at the sample points for the hint and the calculated values are compared with the corresponding values determined by evaluating the ``hint'' answer at the same sampling points. A close correspondence between the two sets of values will trigger the hint action specified in the $<$hintpart$>$ tag.
 \begin{verbatim}
-<problem >
+<problem>
  <script type="loncapa/perl" ># Enter computations here 
  $x1 = random(2,4,1);
  $y1 = random(3,7,1);
@@ -35,197 +35,197 @@
  $wrongans = "$inverted*x";
  $wrongans =~ s/\+-/-/g;
  $wrongans =~ s/-\+/-/g;
-</script >
-<startouttext /><p > What is the equation of the line 
+</script>
+<startouttext /><p> What is the equation of the line 
 which passess through ($x1,$y1) and ($x2,$y2)?</p > y = <endouttext />
-<formularesponse samples="x at -5:5#11" id="11" answer="$answer" >
- <textline size="25" / >
-  <hintgroup >
-   <formulahint samples="x at -5:5#11" answer="$wrongans" name="inversegrad" >
-   </formulahint >
-   <hintpart on="inversegrad" >
+<formularesponse samples="x at -5:5#11" id="11" answer="$answer">
+ <textline size="25" />
+  <hintgroup>
+   <formulahint samples="x at -5:5#11" answer="$wrongans" name="inversegrad">
+   </formulahint>
+   <hintpart on="inversegrad">
     <startouttext />You have inverted the slope in the question.  Slope is
-(y2-y1)/(x2 - x1) you have the slope as (x2-x1)/(y2-y1).<endouttext / >
-   </hintpart >
-  </hintgroup >     
- </formularesponse >
-</problem >
+(y2-y1)/(x2 - x1) you have the slope as (x2-x1)/(y2-y1).<endouttext />
+   </hintpart>
+  </hintgroup>
+ </formularesponse>
+</problem>
 \end{verbatim}
 
 \item Numerical Response condition
 
-The numericalhint tag takes four parameters: answer, name, unit and format. The "name" is the unique name given to the hint condition. The numerical answer for which you wish to provide conditional is included in the answer parameter. Student submission of that answer in combination with the "unit" parameter in the hint condition will trigger the hint action specified in the \textless hintpart \textgreater tag.
+The numericalhint tag takes four parameters: answer, name, unit and format. The ``name'' is the unique name given to the hint condition. The numerical answer for which you wish to provide conditional is included in the answer parameter. Student submission of that answer in combination with the ``unit'' parameter in the hint condition will trigger the hint action specified in the $<$hintpart$>$ tag.
 
 \begin{verbatim}
-<problem > <startouttext /> A car travels 10 km in 10 min. 
+<problem> <startouttext /> A car travels 10 km in 10 min. 
  What is the speed of the car?<endouttext />
   <numericalresponse format="1f" unit="km/hr" answer="60">
    <responseparam description="Numerical Tolerance" default="2%" 
      type="tolerance" name="tol" />
     <textline />
-    <hintgroup >
+    <hintgroup>
      <numericalhint format="1f" unit="km/min" answer="100" name="speed">
        <responseparam description="Numerical Tolerance" type="tolerance" 
        default="2%" name="tol" />
-     </numericalhint >
+     </numericalhin >
       <hintpart on="speed">
        <startouttext />You multiplied the distance by the time.  Remember 
        speed = distance/time<endouttext />
-      </hintpart >
-     </hintgroup >
-   </numericalresponse >
-</problem >
+      </hintpart>
+     </hintgroup>
+   </numericalresponse>
+</problem>
 \end{verbatim}
 
 \item Option Response Hint condition
 
-There are two types of option response hint conditions: one for standalone foils and one for concept groups. In both cases the option hint tag includes two parameters: answer and name for standalone foils, and concept and name for foils grouped together in a concept group. For the answer parameter, the names and submitted values for each of the foils that are being included in the hint condition are provided in a hash, i.e., in the format: ('Foil1'=\textgreater'True','Foil2'=\textgreater'False'). In the case of a conditional hint for a concept group, the format of the concept parameter is also a hash that links the name of each concept group included in the hint condition to either 'correct' or 'incorrect' - e.g., \textless optionhint concept="('buoyancy'=\textgreater'correct','density'=\textgreater'correct')" name="fluids" / \textgreater If 'correct' is specified for a named concept then when the conditional hint is evaluated answers for each of the foils selected by a stu!
 dent must be correct for the hint action to be triggered. If anything other than 'correct' is provided in the concept hash in the optionhint tag then then students answers will be compared with the set answers for the foils in the concept group and as long as at least one answer is incorrect (i.e., the concept group was not correctly answered) then the corresponding hint action will be triggered.
+There are two types of option response hint conditions: one for standalone foils and one for concept groups. In both cases the option hint tag includes two parameters: answer and name for standalone foils, and concept and name for foils grouped together in a concept group. For the answer parameter, the names and submitted values for each of the foils that are being included in the hint condition are provided in a hash, i.e., in the format: ('Foil1'=$>$'True','Foil2'=$>$'False'). In the case of a conditional hint for a concept group, the format of the concept parameter is also a hash that links the name of each concept group included in the hint condition to either 'correct' or 'incorrect' - e.g., $<$optionhint concept="('buoyancy'=$>$'correct','density'=$>$'correct')" name=``fluids'' /$>$ If 'correct' is specified for a named concept then when the conditional hint is evaluated answers for each of the foils selected by a student must be correct for the hint action to be trig!
 gered. If anything other than 'correct' is provided in the concept hash in the optionhint tag then then students answers will be compared with the set answers for the foils in the concept group and as long as at least one answer is incorrect (i.e., the concept group was not correctly answered) then the corresponding hint action will be triggered.
 
 \begin{enumerate}
 	\item optionresponse
 \begin{verbatim}
-<problem >
+<problem>
  <startouttext />For each of the following rock types, indicate 
-  whether or not the rock is a volcanic rock.<endouttext / >
- <optionresponse max="10" randomize="yes" >
+  whether or not the rock is a volcanic rock.<endouttext />
+ <optionresponse max="10" randomize="yes">
   <foilgroup options="('Yes','No')" >
-   <foil location="random" value="No" name="schist" >
-    <startouttext />Schist<endouttext / >
-   </foil >
-   <foil location="random" value="No" name="marble" >
-    <startouttext />Marble<endouttext / >
-   </foil >
-   <foil location="random" value="Yes" name="basalt" >
-    <startouttext />Basalt<endouttext / >
-   </foil >
-   <foil location="random" value="No" name="gabbro" >
+   <foil location="random" value="No" name="schist">
+    <startouttext />Schist<endouttext />
+   </foil>
+   <foil location="random" value="No" name="marble">
+    <startouttext />Marble<endouttext />
+   </foil>
+   <foil location="random" value="Yes" name="basalt">
+    <startouttext />Basalt<endouttext />
+   </foil>
+   <foil location="random" value="No" name="gabbro">
     <startouttext />Gabbro<endouttext />
-   </foil >
-   <foil location="random" value="No" name="granite" >
+   </foil>
+   <foil location="random" value="No" name="granite">
     <startouttext />Granite<endouttext />
-   </foil >
+   </foil>
   </foilgroup >
   <hintgroup >
    <optionhint answer="('schist'=>'Yes','marble'=>'Yes')" 
-     name="metamorphic"/ >
+     name="metamorphic"/>
    <optionhint answer="('gabbro'=>'Yes','granite'=>'Yes')" 
-     name="plutonic" / >
+     name="plutonic" />
    <hintpart on="metamorphic">
     <startouttext />Schist and Marble are both examples of 
       metamorphic rocks as described on page 2 of the textbook.
-      <br / ><br / ><endouttext / >
-   </hintpart >
-   <hintpart on="plutonic" >
+      <br /><br /><endouttext />
+   </hintpart>
+   <hintpart on="plutonic">
     <startouttext />Granite and Gabbro are both examples of 
      igneous rocks that crystallized beneath the surface, i.e., 
-     they are plutonic rocks.<br / ><br / ><endouttext / >
-   </hintpart >
+     they are plutonic rocks.<br /><br /><endouttext />
+   </hintpart>
    <hintpart on="default" >
     <startouttext />Volcanic rocks are described on page 22 
-     of the textbook.<endouttext / >
-   </hintpart >
-  </hintgroup >
- </optionresponse >
-</problem >
+     of the textbook.<endouttext />
+   </hintpart>
+  </hintgroup>
+ </optionresponse>
+</problem>
 \end{verbatim}
 
 \item optionresponse with concept groups
 
 \begin{verbatim}
-<problem >
+<problem>
  <startouttext />Choose the likely plate boundary type, 
   where you are most likely to encounter each of the following 
-  geologic features or phenomena.<endouttext / >
- <optionresponse max="10" randomize="yes" >
+  geologic features or phenomena.<endouttext />
+ <optionresponse max="10" randomize="yes">
    <foilgroup options="('Convergent','Divergent','Transform')" >
-     <conceptgroup concept="faulting" >
-       <foil name="normal" value="Divergent" >
-         <startouttext / >Normal faults<endouttext / > 
-       </foil >
-       <foil name="strike" value="Transform" >
+     <conceptgroup concept="faulting">
+       <foil name="normal" value="Divergent">
+         <startouttext / >Normal faults<endouttext /> 
+       </foil>
+       <foil name="strike" value="Transform">
          <startouttext / >Strike-slip faults<endouttext />
-       </foil >
-       <foil name="thrust" value="Convergent" >
+       </foil>
+       <foil name="thrust" value="Convergent">
          <startouttext />Thrust faults<endouttext />
-       </foil >
-     </conceptgroup >
-     <conceptgroup concept="earthquakes" >
-       <foil name="deep" value="Convergent" >
+       </foil>
+     </conceptgroup>
+     <conceptgroup concept="earthquakes">
+       <foil name="deep" value="Convergent">
          <startouttext / >Large Magntitude, deep and intermediate 
-          focus earthquakes<endouttext / >
-       </foil >
-       <foil name="shallow" value="Transform" >
+          focus earthquakes<endouttext />
+       </foil>
+       <foil name="shallow" value="Transform">
          <startouttext / >Large magnitude, shallow focus earthquakes
           <endouttext />
-       </foil >
-      <foil name="lowmag" value="Divergent" >
+       </foil>
+      <foil name="lowmag" value="Divergent">
          <startouttext / >Low magnitude shallow focus earthquakes
           <endouttext />
-       </foil >
-     </conceptgroup >
-     <conceptgroup concept="topography" >
-       <foil name="gentle" value="Divergent" >
+       </foil>
+     </conceptgroup>
+     <conceptgroup concept="topography">
+       <foil name="gentle" value="Divergent">
          <startouttext / >Broad area of elevated topography with a 
-          central rift valley.<endouttext / >
-       </foil >
-       <foil name="linear" value="Transform" >
+          central rift valley.<endouttext />
+       </foil>
+       <foil name="linear" value="Transform">
          <startouttext / >A narrow linear fault zone with limited 
-          topgraphic expression.<endouttext / >
-       </foil >
-       <foil name="trench" value="Convergent" >
+          topgraphic expression.<endouttext />
+       </foil>
+       <foil name="trench" value="Convergent">
          <startouttext />A deep trench adjacent to a volcanic arc.
-          <endouttext / >
-       </foil >
-     </conceptgroup >
-     <conceptgroup concept="volcanism" >
-       <foil name="explosize" value="Convergent" >
+          <endouttext />
+       </foil>
+     </conceptgroup>
+     <conceptgroup concept="volcanism">
+       <foil name="explosize" value="Convergent">
          <startouttext />Explosive volcanism involving volatile-rich 
-           viscous magma.<endouttext / >
-       </foil >
-       <foil name="fluid" value="Divergent" >
+           viscous magma.<endouttext />
+       </foil>
+       <foil name="fluid" value="Divergent">
          <startouttext />Non-explosive outpourings of low-viscosity 
-           magma.<endouttext / >
-       </foil >
-       <foil name="nonvolcanic" value="Transform" >
-         <startouttext />No volcanic activity.<endouttext / >
-       </foil >
-     </conceptgroup >
-   </foilgroup >
-   <hintgroup >
+           magma.<endouttext />
+       </foil>
+       <foil name="nonvolcanic" value="Transform">
+         <startouttext />No volcanic activity.<endouttext />
+       </foil>
+     </conceptgroup>
+   </foilgroup>
+   <hintgroup>
      <optionhint concept="('earthquakes' => 'incorrect')" 
-       name="quakes" / >
+       name="quakes" />
      <optionhint concept="('volcanism' => 'incorrect')" 
-       name="volcactivity" / >
+       name="volcactivity" />
      <optionhint concept="('topography' => 'incorrect')" 
-       name="relief" / >
-     <hintpart on="volcanism" >
+       name="relief" />
+     <hintpart on="volcanism">
        <startouttext />Volcanism requires a source of magma. 
         Magma can be generated by either a depression in the solidus 
         caused by an influx of volatiles, or by decompression melting. 
         Magma rich in volatiles tends to cause explosive volcanism.
-        <endouttext / >
-     </hintpart >
-     <hintpart on="quakes" >
+        <endouttext />
+     </hintpart>
+     <hintpart on="quakes">
        <startouttext />Earthquakes require brittle failure, so there 
         is a correlation between the depth of earthquake foci and the 
         geotherm.  The geotherm is depressed in subduction zones, and 
-        elevated at mid-ocean ridges.<endouttext / >
-     </hintpart >
-     <hintpart on="relief" >
-       <startouttext / >On a broad scale topography is an expression 
+        elevated at mid-ocean ridges.<endouttext />
+     </hintpart>
+     <hintpart on="relief">
+       <startouttext />On a broad scale topography is an expression 
         of density variation, as embodied in the concept of isostasy.  
         Density variation in the earth is a function of temperature and 
         composition.  Cold oceanic crust entering a subduction zone is 
         dense, whereas as magma is buoyant and of lower density.
-        <br / ><br / ><endouttext / >
-     </hintpart >
-    <hintpart on="default" >
-     <startouttext / >The characteristics of plate boundaries are 
-       described on page 52 of the textbook.<endouttext / >
-    </hintpart >
-   </hintgroup >
- </optionresponse >
-</problem >
+        <br /><br /><endouttext />
+     </hintpart>
+    <hintpart on="default">
+     <startouttext />The characteristics of plate boundaries are 
+       described on page 52 of the textbook.<endouttext />
+    </hintpart>
+   </hintgroup>
+ </optionresponse>
+</problem>
 \end{verbatim}
 \end{enumerate}
 
@@ -236,79 +236,83 @@
   
 \begin{verbatim}
  <radiobuttonhint answer="('foil','granite','gabbro')"
-name="igneous" ></radiobuttonhint >
+name="igneous"></radiobuttonhint>
+\end{verbatim}
+
   In order to trigger display of this hint you also need to create a
-<hintpart ></hintpart > block that will include a textblock that 
+$<$hintpart$>$$<$/hintpart$>$ block that will include a textblock that 
   contains the text of the actual hint.
- <hintpart on="igneous" >
+
+\begin{verbatim}
+ <hintpart on="igneous">
   <startouttext />This type of rock is composed of interlocking 
-   crystals, a characteristic of igneous rocks.<endouttext / >
- </hintpart >
+   crystals, a characteristic of igneous rocks.<endouttext />
+ </hintpart>
 \end{verbatim}
 
   The complete radiobutton response would look as follows:
  
 \begin{verbatim}
-<problem >
+<problem>
  <startouttext />
  Which of the following is a sedimentary rock?
  <endouttext />
 
- <radiobuttonresponse max="3" randomize="yes" >
-   <foilgroup >
-     <foil location="random" value="false" name="granite" >
-    <startouttext / >
+ <radiobuttonresponse max="3" randomize="yes">
+   <foilgroup>
+     <foil location="random" value="false" name="granite">
+    <startouttext />
      Granite
-    <endouttext / >
-   </foil >
+    <endouttext />
+   </foil>
 
-   <foil location="random" value="false" name="gabbro" >
-    <startouttext / >
+   <foil location="random" value="false" name="gabbro">
+    <startouttext />
      Gabbro
-    <endouttext / >
-   </foil >
+    <endouttext />
+   </foil>
 
    <foil location="random" value="false" name="schist">
-    <startouttext / >
+    <startouttext />
      Schist
     <endouttext />
-   </foil >
+   </foil>
 
-   <foil location="random" value="false" name="gneiss" >
-    <startouttext / >
+   <foil location="random" value="false" name="gneiss">
+    <startouttext />
      Gneiss
-    <endouttext / >
-   </foil >
+    <endouttext />
+   </foil>
 
-   <foil location="random" value="true" name="shale" >
-    <startouttext / >
+   <foil location="random" value="true" name="shale">
+    <startouttext />
      Shale
-    <endouttext / >
-   </foil >
-      <foil location="random" value="true" name="sandstone" >
-    <startouttext / >
+    <endouttext />
+   </foil>
+      <foil location="random" value="true" name="sandstone">
+    <startouttext />
      Sandstone
-    <endouttext / >
-   </foil >
+    <endouttext />
+   </foil>
 
-  </foilgroup >
-  <hintgroup >
+  </foilgroup>
+  <hintgroup>
    <radiobuttonhint answer="('foil','granite','gabbro')"
-name="igneous" ></radiobuttonhint >
+name="igneous" ></radiobuttonhint>
    <radiobuttonhint answer="('foil','gneiss','schist')"
-name="metamorphic" ></radiobuttonhint >
+name="metamorphic"></radiobuttonhint>
 
-   <hintpart on="igneous" >
+   <hintpart on="igneous">
     <startouttext />This type of rock is composed of interlocking 
-      crystals, a characteristic of igneous rocks.<br / ><br / ><endouttext / >
-   </hintpart >
-   <hintpart on="metamorphic" >
+      crystals, a characteristic of igneous rocks.<br /><br /><endouttext />
+   </hintpart>
+   <hintpart on="metamorphic">
     <startouttext />This type of rock is composed of oriented crystals, a
-characteristic of foliated metamorphic rocks.<endouttext / >
-   </hintpart >
-  </hintgroup >
- </radiobuttonresponse >
-</problem >
+characteristic of foliated metamorphic rocks.<endouttext />
+   </hintpart>
+  </hintgroup>
+ </radiobuttonresponse>
+</problem>
 \end{verbatim}
 
 \item String Hint condition
@@ -316,28 +320,28 @@
 The radiobutton hint tag takes two parameters: answer and name. The name is the name of the hint condition, and the answer is a text string. The type parameter allows you to choose between case sensitive, case insensitive, and case insensitive in any order. A simple example is shown below.
 
 \begin{verbatim}
-<problem >
- <startouttext />Which US state has Lansing as its capital?<endouttext / >
-  <stringresponse answer="Michigan" type="ci" >
-  <textline size="20" / >
-  <hintgroup >
-   <stringhint answer="wisconsin" type="cs" name="wisc" >
-   </stringhint >
-   <stringhint answer="minnesota" type="cs" name="minn" >
-   </stringhint >
+<problem>
+ <startouttext />Which US state has Lansing as its capital?<endouttext />
+  <stringresponse answer="Michigan" type="ci">
+  <textline size="20" />
+  <hintgroup>
+   <stringhint answer="wisconsin" type="cs" name="wisc">
+   </stringhint>
+   <stringhint answer="minnesota" type="cs" name="minn">
+   </stringhint>
    <hintpart on="wisc">
-    <startouttext />The state capital of Wisconsin is Madison.<endouttext / >
-   </hintpart >
+    <startouttext />The state capital of Wisconsin is Madison.<endouttext />
+   </hintpart>
    <hintpart on="minn">
-    <startouttext />The state capital of Minnesota is St. Paul.<endouttext / >
-   </hintpart >
-   <hintpart on="default" >
+    <startouttext />The state capital of Minnesota is St. Paul.<endouttext />
+   </hintpart>
+   <hintpart on="default"> 
     <startouttext />The state you are looking for is also known as the 
-     'Great Lakes State'<endouttext / >
-   </hintpart >     
-  </hintgroup >
- </stringresponse >
-</problem > 
+     'Great Lakes State'<endouttext />
+   </hintpart>     
+  </hintgroup>
+ </stringresponse>
+</problem> 
 \end{verbatim}
 
 \end{enumerate}


More information about the LON-CAPA-cvs mailing list