Annotation of doc/homework/analyze_structure, revision 1.1

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: 
        !            19: <numerical/formularesponse>
        !            20: 
        !            21:     - $prefix.type - either 'numericalresponse or 'formularesponse'
        !            22: 
        !            23:     - $prefix.incorrect - array of the values that are in the incorrect
        !            24:                           attribute for a numericalresponse 
        !            25: 
        !            26: 
        !            27:     For each of these, the value is a hash, with keys that are the
        !            28:     value of the name attribute of the associated <answer>, the value
        !            29:     of that is an array for each component of the answer
        !            30: 
        !            31:     For example
        !            32: 
        !            33:      $analyze{"$prefix.answer"}{$name}[1]
        !            34: 
        !            35:     is the second component of the ansser $name for the response $prefix
        !            36: 
        !            37: 
        !            38:         - $prefix.answer   - the correct answer
        !            39:         - $prefix.unit     - the unit for the correct answer
        !            40:         - $prefix.ans_high - for ranged answers the highest allowed answer
        !            41:         - $prefix.ans_low  - for ranged answers the lowest allowed answer
        !            42:         - $prefix.format   - the format specification for displaying the
        !            43:                              correct answer
        !            44: 
        !            45: 
        !            46: <stringresponse>
        !            47: 
        !            48:     - $prefix.type - will be 'stringresponse'
        !            49: 
        !            50:     For each of these, the value is a hash, with keys that are the
        !            51:     value of the name attribute of the associated <answer>, the value of
        !            52:     that is an array for each component of the answer
        !            53: 
        !            54:     For example
        !            55: 
        !            56:       $analyze{"$prefix.answer"}{$name}[1]
        !            57: 
        !            58:     is the second component of the answser $name for the response $prefix
        !            59: 
        !            60:         - $prefix.answer   - the correct answer
        !            61:         - $prefix.str_type - the type of answer (either 'mc' 'cs' 'ci' 're')
        !            62: 
        !            63: 
        !            64: 
        !            65: 
        !            66: <image/match/option/radiobutton/rank response>
        !            67: 
        !            68:     - $prefix.foils - a list of all names seen from the <foil>s name attribute
        !            69:     - $prefix.shown - a list of all <foil> names that were actually shown to
        !            70:                      this user (in the order that they were displayed to them)
        !            71: 
        !            72:     - $prefix.concepts - (only appears if <conceptgroup> is used) 
        !            73:                      a list of all the concept attributes for each
        !            74:                      <conceptgroup>s that appears 
        !            75: 
        !            76:     For each of the possible <conceptgroup> concepts from the
        !            77:     $prefix.concepts array there is a
        !            78: 
        !            79:         - $prefix.concept.$concept - the array of <foil> names associated 
        !            80:                                      with $concept
        !            81: 
        !            82:     For each of the possible <foil> names from the $prefix.foils array
        !            83:     there is a
        !            84: 
        !            85:         - $prefix.foil.value.$name - the correct value for this <foil> (from
        !            86:                                      the <foil>'s value attribute)
        !            87: 
        !            88:         - $prefix.foil.text.$name - the text that was displayed to the student
        !            89:                                     as the text for this foil
        !            90: 
        !            91:     For <rank/radiobutton/option/match response> there is also
        !            92: 
        !            93:         - $prefix.foil.location.$name - the value of the location
        !            94:                                         attribute for the
        !            95:                                         value tag (expected to be
        !            96:                                         either 'top',
        !            97:                                        'bottom', or 'random' if blank,
        !            98:                                        assumed to be 'random' 
        !            99: 
        !           100: 
        !           101: 
        !           102: <imageresponse>
        !           103:     - $prefix.foil.image.$name - the url of the image that is displayed
        !           104:                                  to the user
        !           105: 
        !           106:     - $prefix.foil.area.$name - the area of the image that is set as correct
        !           107: 
        !           108: 
        !           109: <matchresponse>
        !           110: 
        !           111:     - $prefix.items - array of the names of the <item>s 
        !           112: 
        !           113: <optionresponse>
        !           114: 
        !           115:     - $prefix.options - array of all possible selectable options 
        !           116:                         (from the <foilgroup>)
        !           117: 
        !           118: <radiobuttonresponse>
        !           119: 
        !           120:     - $prefix.options - array of all possible selectable options 
        !           121:                         (which will always be 'true' and 'false')
        !           122: 
        !           123: 
        !           124: <rankresponse>
        !           125: 
        !           126:     - $prefix.tol - the tolerance to apply when checking if two <foil>s
        !           127:                     are equivalent or not
        !           128: 
        !           129: 

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