Annotation of doc/homework/analyze_structure, revision 1.2

1.1       albertel    1: parts - array of identifiers for responses that have registered
                      2:         themselves in order that they occur in the problem.
                      3: 	The identifiers have the format
                      4: 
                      5:    $part_id.$response_id
                      6:        
                      7:         and they will prefix all other keys that are associated with the 
                      8:         associated response
                      9: 
                     10: 
                     11: For the rest of the keys $prefix will be a entry from the above parts array
                     12: 
                     13:     - $prefix.answercomputed - will be set to 1 if it's been detected
                     14:                                that the correct answer is calculated (and
                     15:                                then likely to vary on a per student basis)
                     16:                                or statically set (and thus likely the same
                     17:                                for each student)
                     18: 
1.2     ! foxr       19:    - $prefix.bubble_lines    - Number of lines of bubbles in a scantron
        !            20:                                sheet required for this response.  This is used
        !            21:                                to know exactly what it means to multiply bubble
        !            22:                                or to not have bubbles for a response in exam
        !            23:                                mode taken on scantron sheets.
        !            24: 
1.1       albertel   25: <numerical/formularesponse>
                     26: 
                     27:     - $prefix.type - either 'numericalresponse or 'formularesponse'
                     28: 
                     29:     - $prefix.incorrect - array of the values that are in the incorrect
                     30:                           attribute for a numericalresponse 
                     31: 
                     32: 
                     33:     For each of these, the value is a hash, with keys that are the
                     34:     value of the name attribute of the associated <answer>, the value
                     35:     of that is an array for each component of the answer
                     36: 
                     37:     For example
                     38: 
                     39:      $analyze{"$prefix.answer"}{$name}[1]
                     40: 
                     41:     is the second component of the ansser $name for the response $prefix
                     42: 
                     43: 
                     44:         - $prefix.answer   - the correct answer
                     45:         - $prefix.unit     - the unit for the correct answer
                     46:         - $prefix.ans_high - for ranged answers the highest allowed answer
                     47:         - $prefix.ans_low  - for ranged answers the lowest allowed answer
                     48:         - $prefix.format   - the format specification for displaying the
                     49:                              correct answer
                     50: 
                     51: 
                     52: <stringresponse>
                     53: 
                     54:     - $prefix.type - will be 'stringresponse'
                     55: 
                     56:     For each of these, the value is a hash, with keys that are the
                     57:     value of the name attribute of the associated <answer>, the value of
                     58:     that is an array for each component of the answer
                     59: 
                     60:     For example
                     61: 
                     62:       $analyze{"$prefix.answer"}{$name}[1]
                     63: 
                     64:     is the second component of the answser $name for the response $prefix
                     65: 
                     66:         - $prefix.answer   - the correct answer
                     67:         - $prefix.str_type - the type of answer (either 'mc' 'cs' 'ci' 're')
                     68: 
                     69: 
                     70: 
                     71: 
                     72: <image/match/option/radiobutton/rank response>
                     73: 
                     74:     - $prefix.foils - a list of all names seen from the <foil>s name attribute
                     75:     - $prefix.shown - a list of all <foil> names that were actually shown to
                     76:                      this user (in the order that they were displayed to them)
                     77: 
                     78:     - $prefix.concepts - (only appears if <conceptgroup> is used) 
                     79:                      a list of all the concept attributes for each
                     80:                      <conceptgroup>s that appears 
                     81: 
                     82:     For each of the possible <conceptgroup> concepts from the
                     83:     $prefix.concepts array there is a
                     84: 
                     85:         - $prefix.concept.$concept - the array of <foil> names associated 
                     86:                                      with $concept
                     87: 
                     88:     For each of the possible <foil> names from the $prefix.foils array
                     89:     there is a
                     90: 
                     91:         - $prefix.foil.value.$name - the correct value for this <foil> (from
                     92:                                      the <foil>'s value attribute)
                     93: 
                     94:         - $prefix.foil.text.$name - the text that was displayed to the student
                     95:                                     as the text for this foil
                     96: 
                     97:     For <rank/radiobutton/option/match response> there is also
                     98: 
                     99:         - $prefix.foil.location.$name - the value of the location
                    100:                                         attribute for the
                    101:                                         value tag (expected to be
                    102:                                         either 'top',
                    103:                                        'bottom', or 'random' if blank,
                    104:                                        assumed to be 'random' 
                    105: 
                    106: 
                    107: 
                    108: <imageresponse>
                    109:     - $prefix.foil.image.$name - the url of the image that is displayed
                    110:                                  to the user
                    111: 
                    112:     - $prefix.foil.area.$name - the area of the image that is set as correct
                    113: 
                    114: 
                    115: <matchresponse>
                    116: 
                    117:     - $prefix.items - array of the names of the <item>s 
                    118: 
                    119: <optionresponse>
                    120: 
                    121:     - $prefix.options - array of all possible selectable options 
                    122:                         (from the <foilgroup>)
                    123: 
                    124: <radiobuttonresponse>
                    125: 
                    126:     - $prefix.options - array of all possible selectable options 
                    127:                         (which will always be 'true' and 'false')
                    128: 
                    129: 
                    130: <rankresponse>
                    131: 
                    132:     - $prefix.tol - the tolerance to apply when checking if two <foil>s
                    133:                     are equivalent or not
                    134: 
                    135: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>