qti 2.3.0 → 2.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: d403cbd96ceea6d51d6a27c210b4498996a742dc4f93453507bedad8ce4a032d
4
- data.tar.gz: 9cb50045bb3437c0ee2df8569b3762feb33e52d652682ea8828e7c8061dd2b9b
2
+ SHA1:
3
+ metadata.gz: 8ecbdc7735cca56f8fca34b0386b39f8ec46df19
4
+ data.tar.gz: 34b4ca1b2a5ab79a9e6db3beb95b7dc40e9fe37c
5
5
  SHA512:
6
- metadata.gz: f0b9f078f0d3b9566f0439cb22f5e1ffdc5b269ed31ae07172fafd5fce9f1d4fb95a5b8f71877bdfe0d0ff90c0987157d35841613b930367208eb0e7b6901cce
7
- data.tar.gz: 53f22ab124044a04a33b83581127a9a08856b4b49a1a37842eacdea86655ef2a433ae2bcc23c43af1f890807af0b354dc0ef85c1abe78edb7fc8309f5ad311b3
6
+ metadata.gz: 290799f4ae385f3002f2d8211290b82c431c129a563799c4bf7dcaad47e66602d1a079197ba04f054dbf8310a3ede21f70fae9a656d0834d7bb3758473e20ad0
7
+ data.tar.gz: 1b6887a2f923544fbeef2b28facdeb7550210007f9c178802c6d677852a8da9016abd7ad80bd18c688e2ce49cc21fd20e3326b19cf4e105a77ff27f077d37eed
data/lib/qti.rb CHANGED
@@ -103,6 +103,7 @@ require 'qti/models/manifest'
103
103
  require 'qti/v1/models/assessment_item'
104
104
  require 'qti/v1/models/choices/logical_identifier_choice'
105
105
  require 'qti/v1/models/choices/fill_blank_choice'
106
+ require 'qti/v1/models/object_bank'
106
107
  require 'qti/v1/models/scoring_data'
107
108
  require 'qti/v1/models/stimulus_item'
108
109
  require 'qti/v1/models/question_group'
@@ -73,6 +73,12 @@ module Qti
73
73
  rsc.href
74
74
  end
75
75
 
76
+ def load_asset_resource(rsc_path)
77
+ doc = Nokogiri.XML(File.read(rsc_path), rsc_path.to_s, &:noblanks)
78
+ raise ArgumentError unless doc
79
+ doc
80
+ end
81
+
76
82
  def identifier_list(rsc_type)
77
83
  RESOURCE_QTI_TYPES.map do |v|
78
84
  xmlns_resource_list("[#{rtype_predicate(v, rsc_type)}]").map { |r| r[:identifier] }
@@ -91,8 +97,26 @@ module Qti
91
97
  id_list
92
98
  end
93
99
 
94
- def question_bank_identifiers
95
- identifier_list('/question-bank')
100
+ def associated_content_list
101
+ predicate = rtype_predicate('associatedcontent', 'learning-application-resource')
102
+ xmlns_resource_list("[#{predicate}]").map { |r| r[:identifier] }
103
+ end
104
+
105
+ def load_associated_content
106
+ @_load_associated_content ||= associated_content_list.map do |ident|
107
+ rsc = resource_for(ident)
108
+ rsc_path = remap_href_path(asset_resource_for(rsc))
109
+ doc = load_asset_resource(rsc_path)
110
+
111
+ # There are other types, but all we support right now are object banks...
112
+ Qti::V1::Models::ObjectBank.from_path!(rsc_path, @package_root, rsc) unless doc.search('objectbank').empty?
113
+ end.reject(&:nil?)
114
+ end
115
+
116
+ def objectbanks
117
+ load_associated_content.select do |c|
118
+ c.class == Qti::V1::Models::ObjectBank
119
+ end
96
120
  end
97
121
 
98
122
  def item_resources_v2
@@ -0,0 +1,14 @@
1
+ module Qti
2
+ module V1
3
+ module Models
4
+ class ObjectBank < Qti::V1::Models::Assessment
5
+ # use assessment_items / create_assessment_item from Assessment for bank items
6
+ def title
7
+ @title ||= xpath_with_single_check(
8
+ './/xmlns:qtimetadatafield/xmlns:fieldlabel[text()="bank_title"]/../xmlns:fieldentry'
9
+ )&.content || File.basename(@path, '.xml')
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
@@ -1,3 +1,3 @@
1
1
  module Qti
2
- VERSION = '2.3.0'.freeze
2
+ VERSION = '2.4.0'.freeze
3
3
  end
@@ -0,0 +1,69 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <quiz identifier="g9a20cf3af178b54e4792cbe992f65790" xmlns="http://canvas.instructure.com/xsd/cccv1p0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://canvas.instructure.com/xsd/cccv1p0 https://canvas.instructure.com/xsd/cccv1p0.xsd">
3
+ <title>Some Old Quiz</title>
4
+ <description></description>
5
+ <shuffle_answers>false</shuffle_answers>
6
+ <scoring_policy>keep_highest</scoring_policy>
7
+ <hide_results></hide_results>
8
+ <quiz_type>assignment</quiz_type>
9
+ <points_possible>2.0</points_possible>
10
+ <require_lockdown_browser>false</require_lockdown_browser>
11
+ <require_lockdown_browser_for_results>false</require_lockdown_browser_for_results>
12
+ <require_lockdown_browser_monitor>false</require_lockdown_browser_monitor>
13
+ <lockdown_browser_monitor_data/>
14
+ <show_correct_answers>true</show_correct_answers>
15
+ <anonymous_submissions>false</anonymous_submissions>
16
+ <could_be_locked>false</could_be_locked>
17
+ <allowed_attempts>1</allowed_attempts>
18
+ <one_question_at_a_time>false</one_question_at_a_time>
19
+ <cant_go_back>false</cant_go_back>
20
+ <available>true</available>
21
+ <one_time_results>false</one_time_results>
22
+ <show_correct_answers_last_attempt>false</show_correct_answers_last_attempt>
23
+ <only_visible_to_overrides>false</only_visible_to_overrides>
24
+ <module_locked>false</module_locked>
25
+ <assignment identifier="gb98a9874cd3fea8325707d223d081434">
26
+ <title>Some Old Quiz</title>
27
+ <due_at/>
28
+ <lock_at/>
29
+ <unlock_at/>
30
+ <module_locked>false</module_locked>
31
+ <assignment_group_identifierref>g1c323f0750787884cb0c59182fc2264b</assignment_group_identifierref>
32
+ <workflow_state>published</workflow_state>
33
+ <assignment_overrides>
34
+ </assignment_overrides>
35
+ <quiz_identifierref>g9a20cf3af178b54e4792cbe992f65790</quiz_identifierref>
36
+ <allowed_extensions></allowed_extensions>
37
+ <has_group_category>false</has_group_category>
38
+ <points_possible>2.0</points_possible>
39
+ <grading_type>points</grading_type>
40
+ <all_day>false</all_day>
41
+ <submission_types>online_quiz</submission_types>
42
+ <position>1</position>
43
+ <turnitin_enabled>false</turnitin_enabled>
44
+ <vericite_enabled>false</vericite_enabled>
45
+ <peer_review_count>0</peer_review_count>
46
+ <peer_reviews>false</peer_reviews>
47
+ <automatic_peer_reviews>false</automatic_peer_reviews>
48
+ <anonymous_peer_reviews>false</anonymous_peer_reviews>
49
+ <grade_group_students_individually>false</grade_group_students_individually>
50
+ <freeze_on_copy>false</freeze_on_copy>
51
+ <omit_from_final_grade>false</omit_from_final_grade>
52
+ <intra_group_peer_reviews>false</intra_group_peer_reviews>
53
+ <only_visible_to_overrides>false</only_visible_to_overrides>
54
+ <post_to_sis>false</post_to_sis>
55
+ <moderated_grading>false</moderated_grading>
56
+ <grader_count>0</grader_count>
57
+ <grader_comments_visible_to_graders>true</grader_comments_visible_to_graders>
58
+ <anonymous_grading>false</anonymous_grading>
59
+ <graders_anonymous_to_graders>false</graders_anonymous_to_graders>
60
+ <grader_names_visible_to_final_grader>true</grader_names_visible_to_final_grader>
61
+ <anonymous_instructor_annotations>false</anonymous_instructor_annotations>
62
+ <post_policy>
63
+ <post_manually>false</post_manually>
64
+ </post_policy>
65
+ </assignment>
66
+ <assignment_group_identifierref>g1c323f0750787884cb0c59182fc2264b</assignment_group_identifierref>
67
+ <assignment_overrides>
68
+ </assignment_overrides>
69
+ </quiz>
@@ -0,0 +1,99 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <questestinterop xmlns="http://www.imsglobal.org/xsd/ims_qtiasiv1p2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.imsglobal.org/xsd/ims_qtiasiv1p2 http://www.imsglobal.org/profile/cc/ccv1p1/ccv1p1_qtiasiv1p2p1_v1p0.xsd">
3
+ <assessment ident="g9a20cf3af178b54e4792cbe992f65790" title="Some Old Quiz">
4
+ <qtimetadata>
5
+ <qtimetadatafield>
6
+ <fieldlabel>cc_profile</fieldlabel>
7
+ <fieldentry>cc.exam.v0p1</fieldentry>
8
+ </qtimetadatafield>
9
+ <qtimetadatafield>
10
+ <fieldlabel>qmd_assessmenttype</fieldlabel>
11
+ <fieldentry>Examination</fieldentry>
12
+ </qtimetadatafield>
13
+ <qtimetadatafield>
14
+ <fieldlabel>qmd_scoretype</fieldlabel>
15
+ <fieldentry>Percentage</fieldentry>
16
+ </qtimetadatafield>
17
+ <qtimetadatafield>
18
+ <fieldlabel>cc_maxattempts</fieldlabel>
19
+ <fieldentry>1</fieldentry>
20
+ </qtimetadatafield>
21
+ </qtimetadata>
22
+ <section ident="root_section">
23
+ <item ident="gb11064031e54bbf6bf076a722e0ac941" title="Question">
24
+ <itemmetadata>
25
+ <qtimetadata>
26
+ <qtimetadatafield>
27
+ <fieldlabel>cc_profile</fieldlabel>
28
+ <fieldentry>cc.true_false.v0p1</fieldentry>
29
+ </qtimetadatafield>
30
+ </qtimetadata>
31
+ </itemmetadata>
32
+ <presentation>
33
+ <material>
34
+ <mattext texttype="text/html">&lt;div&gt;&lt;p&gt;Is this an old quiz?&lt;/p&gt;&lt;/div&gt;</mattext>
35
+ </material>
36
+ <response_lid ident="response1" rcardinality="Single">
37
+ <render_choice>
38
+ <response_label ident="5972">
39
+ <material>
40
+ <mattext texttype="text/plain">True</mattext>
41
+ </material>
42
+ </response_label>
43
+ <response_label ident="5959">
44
+ <material>
45
+ <mattext texttype="text/plain">False</mattext>
46
+ </material>
47
+ </response_label>
48
+ </render_choice>
49
+ </response_lid>
50
+ </presentation>
51
+ <resprocessing>
52
+ <outcomes>
53
+ <decvar maxvalue="100" minvalue="0" varname="SCORE" vartype="Decimal"/>
54
+ </outcomes>
55
+ <respcondition continue="No">
56
+ <conditionvar>
57
+ <varequal respident="response1">5972</varequal>
58
+ </conditionvar>
59
+ <setvar action="Set" varname="SCORE">100</setvar>
60
+ </respcondition>
61
+ </resprocessing>
62
+ </item>
63
+ <item ident="gfc230151001d8b7ba5325da6b895c0e3" title="Question">
64
+ <itemmetadata>
65
+ <qtimetadata>
66
+ <qtimetadatafield>
67
+ <fieldlabel>cc_profile</fieldlabel>
68
+ <fieldentry>cc.essay.v0p1</fieldentry>
69
+ </qtimetadatafield>
70
+ <qtimetadatafield>
71
+ <fieldlabel>qmd_computerscored</fieldlabel>
72
+ <fieldentry>No</fieldentry>
73
+ </qtimetadatafield>
74
+ </qtimetadata>
75
+ </itemmetadata>
76
+ <presentation>
77
+ <material>
78
+ <mattext texttype="text/html">&lt;div&gt;&lt;p&gt;Write an essay about banks&lt;/p&gt;&lt;/div&gt;</mattext>
79
+ </material>
80
+ <response_str ident="response1" rcardinality="Single">
81
+ <render_fib>
82
+ <response_label ident="answer1" rshuffle="No"/>
83
+ </render_fib>
84
+ </response_str>
85
+ </presentation>
86
+ <resprocessing>
87
+ <outcomes>
88
+ <decvar maxvalue="100" minvalue="0" varname="SCORE" vartype="Decimal"/>
89
+ </outcomes>
90
+ <respcondition continue="No">
91
+ <conditionvar>
92
+ <other/>
93
+ </conditionvar>
94
+ </respcondition>
95
+ </resprocessing>
96
+ </item>
97
+ </section>
98
+ </assessment>
99
+ </questestinterop>
@@ -0,0 +1,54 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <manifest identifier="g50b22befc76a159a0520b74a38c85302" xmlns="http://www.imsglobal.org/xsd/imsccv1p1/imscp_v1p1" xmlns:lom="http://ltsc.ieee.org/xsd/imsccv1p1/LOM/resource" xmlns:lomimscc="http://ltsc.ieee.org/xsd/imsccv1p1/LOM/manifest" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.imsglobal.org/xsd/imsccv1p1/imscp_v1p1 http://www.imsglobal.org/profile/cc/ccv1p1/ccv1p1_imscp_v1p2_v1p0.xsd http://ltsc.ieee.org/xsd/imsccv1p1/LOM/resource http://www.imsglobal.org/profile/cc/ccv1p1/LOM/ccv1p1_lomresource_v1p0.xsd http://ltsc.ieee.org/xsd/imsccv1p1/LOM/manifest http://www.imsglobal.org/profile/cc/ccv1p1/LOM/ccv1p1_lommanifest_v1p0.xsd">
3
+ <metadata>
4
+ <schema>IMS Common Cartridge</schema>
5
+ <schemaversion>1.1.0</schemaversion>
6
+ <lomimscc:lom>
7
+ <lomimscc:general>
8
+ <lomimscc:title>
9
+ <lomimscc:string>QTI Bank Export</lomimscc:string>
10
+ </lomimscc:title>
11
+ </lomimscc:general>
12
+ <lomimscc:lifeCycle>
13
+ <lomimscc:contribute>
14
+ <lomimscc:date>
15
+ <lomimscc:dateTime>2020-05-15</lomimscc:dateTime>
16
+ </lomimscc:date>
17
+ </lomimscc:contribute>
18
+ </lomimscc:lifeCycle>
19
+ <lomimscc:rights>
20
+ <lomimscc:copyrightAndOtherRestrictions>
21
+ <lomimscc:value>yes</lomimscc:value>
22
+ </lomimscc:copyrightAndOtherRestrictions>
23
+ <lomimscc:description>
24
+ <lomimscc:string>Private (Copyrighted) - http://en.wikipedia.org/wiki/Copyright</lomimscc:string>
25
+ </lomimscc:description>
26
+ </lomimscc:rights>
27
+ </lomimscc:lom>
28
+ </metadata>
29
+ <organizations>
30
+ <organization identifier="org_1" structure="rooted-hierarchy">
31
+ <item identifier="LearningModules">
32
+ </item>
33
+ </organization>
34
+ </organizations>
35
+ <resources>
36
+ <resource identifier="g195e078fb6e3c4054e38e5c9226287ba" type="associatedcontent/imscc_xmlv1p1/learning-application-resource" href="non_cc_assessments/g195e078fb6e3c4054e38e5c9226287ba.xml.qti">
37
+ <file href="non_cc_assessments/g195e078fb6e3c4054e38e5c9226287ba.xml.qti"/>
38
+ </resource>
39
+ <resource identifier="gf3edf8167be16b3a65a00ca923132b07" type="associatedcontent/imscc_xmlv1p1/learning-application-resource" href="non_cc_assessments/gf3edf8167be16b3a65a00ca923132b07.xml.qti">
40
+ <file href="non_cc_assessments/gf3edf8167be16b3a65a00ca923132b07.xml.qti"/>
41
+ </resource>
42
+ <resource identifier="gab22de457404cb5cf022078f1e4da75e" type="associatedcontent/imscc_xmlv1p1/learning-application-resource" href="non_cc_assessments/gab22de457404cb5cf022078f1e4da75e.xml.qti">
43
+ <file href="non_cc_assessments/gab22de457404cb5cf022078f1e4da75e.xml.qti"/>
44
+ </resource>
45
+ <resource identifier="g9a20cf3af178b54e4792cbe992f65790" type="imsqti_xmlv1p2/imscc_xmlv1p1/assessment">
46
+ <file href="g9a20cf3af178b54e4792cbe992f65790/assessment_qti.xml"/>
47
+ <dependency identifierref="g45f49863d16bc860faa3ed5a0566aa69"/>
48
+ </resource>
49
+ <resource identifier="g45f49863d16bc860faa3ed5a0566aa69" type="associatedcontent/imscc_xmlv1p1/learning-application-resource" href="g9a20cf3af178b54e4792cbe992f65790/assessment_meta.xml">
50
+ <file href="g9a20cf3af178b54e4792cbe992f65790/assessment_meta.xml"/>
51
+ <file href="non_cc_assessments/g9a20cf3af178b54e4792cbe992f65790.xml.qti"/>
52
+ </resource>
53
+ </resources>
54
+ </manifest>
@@ -0,0 +1,85 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <questestinterop xmlns="http://www.imsglobal.org/xsd/ims_qtiasiv1p2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.imsglobal.org/xsd/ims_qtiasiv1p2 http://www.imsglobal.org/xsd/ims_qtiasiv1p2p1.xsd">
3
+ <objectbank ident="g195e078fb6e3c4054e38e5c9226287ba">
4
+ <qtimetadata>
5
+ <qtimetadatafield>
6
+ <fieldlabel>bank_title</fieldlabel>
7
+ <fieldentry>Last Bank</fieldentry>
8
+ </qtimetadatafield>
9
+ </qtimetadata>
10
+ <item ident="gdddd8d1e584c66617c2b3f5245de5eab" title="Question">
11
+ <itemmetadata>
12
+ <qtimetadata>
13
+ <qtimetadatafield>
14
+ <fieldlabel>question_type</fieldlabel>
15
+ <fieldentry>text_only_question</fieldentry>
16
+ </qtimetadatafield>
17
+ <qtimetadatafield>
18
+ <fieldlabel>points_possible</fieldlabel>
19
+ <fieldentry>0</fieldentry>
20
+ </qtimetadatafield>
21
+ <qtimetadatafield>
22
+ <fieldlabel>original_answer_ids</fieldlabel>
23
+ <fieldentry></fieldentry>
24
+ </qtimetadatafield>
25
+ </qtimetadata>
26
+ </itemmetadata>
27
+ <presentation>
28
+ <material>
29
+ <mattext texttype="text/html">&lt;div&gt;&lt;p&gt;This is just some text in a bank&lt;/p&gt;&lt;/div&gt;</mattext>
30
+ </material>
31
+ </presentation>
32
+ </item>
33
+ <item ident="g29b5947f49949ca64008272b9ff29979" title="Question">
34
+ <itemmetadata>
35
+ <qtimetadata>
36
+ <qtimetadatafield>
37
+ <fieldlabel>question_type</fieldlabel>
38
+ <fieldentry>multiple_answers_question</fieldentry>
39
+ </qtimetadatafield>
40
+ <qtimetadatafield>
41
+ <fieldlabel>points_possible</fieldlabel>
42
+ <fieldentry>1.0</fieldentry>
43
+ </qtimetadatafield>
44
+ <qtimetadatafield>
45
+ <fieldlabel>original_answer_ids</fieldlabel>
46
+ <fieldentry>430,1298</fieldentry>
47
+ </qtimetadatafield>
48
+ </qtimetadata>
49
+ </itemmetadata>
50
+ <presentation>
51
+ <material>
52
+ <mattext texttype="text/html">&lt;div&gt;&lt;p&gt;Name a letter after X&lt;/p&gt;&lt;/div&gt;</mattext>
53
+ </material>
54
+ <response_lid ident="response1" rcardinality="Multiple">
55
+ <render_choice>
56
+ <response_label ident="430">
57
+ <material>
58
+ <mattext texttype="text/plain">Y</mattext>
59
+ </material>
60
+ </response_label>
61
+ <response_label ident="1298">
62
+ <material>
63
+ <mattext texttype="text/plain">Z</mattext>
64
+ </material>
65
+ </response_label>
66
+ </render_choice>
67
+ </response_lid>
68
+ </presentation>
69
+ <resprocessing>
70
+ <outcomes>
71
+ <decvar maxvalue="100" minvalue="0" varname="SCORE" vartype="Decimal"/>
72
+ </outcomes>
73
+ <respcondition continue="No">
74
+ <conditionvar>
75
+ <and>
76
+ <varequal respident="response1">430</varequal>
77
+ <varequal respident="response1">1298</varequal>
78
+ </and>
79
+ </conditionvar>
80
+ <setvar action="Set" varname="SCORE">100</setvar>
81
+ </respcondition>
82
+ </resprocessing>
83
+ </item>
84
+ </objectbank>
85
+ </questestinterop>
@@ -0,0 +1,107 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <questestinterop xmlns="http://www.imsglobal.org/xsd/ims_qtiasiv1p2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.imsglobal.org/xsd/ims_qtiasiv1p2 http://www.imsglobal.org/xsd/ims_qtiasiv1p2p1.xsd">
3
+ <assessment ident="g9a20cf3af178b54e4792cbe992f65790" title="Some Old Quiz">
4
+ <qtimetadata>
5
+ <qtimetadatafield>
6
+ <fieldlabel>cc_maxattempts</fieldlabel>
7
+ <fieldentry>1</fieldentry>
8
+ </qtimetadatafield>
9
+ </qtimetadata>
10
+ <section ident="root_section">
11
+ <item ident="g067eae0eb6c36be5b3386c35c2cdfa14" title="Question">
12
+ <itemmetadata>
13
+ <qtimetadata>
14
+ <qtimetadatafield>
15
+ <fieldlabel>question_type</fieldlabel>
16
+ <fieldentry>true_false_question</fieldentry>
17
+ </qtimetadatafield>
18
+ <qtimetadatafield>
19
+ <fieldlabel>points_possible</fieldlabel>
20
+ <fieldentry>1.0</fieldentry>
21
+ </qtimetadatafield>
22
+ <qtimetadatafield>
23
+ <fieldlabel>original_answer_ids</fieldlabel>
24
+ <fieldentry>5972,5959</fieldentry>
25
+ </qtimetadatafield>
26
+ <qtimetadatafield>
27
+ <fieldlabel>assessment_question_identifierref</fieldlabel>
28
+ <fieldentry>gb11064031e54bbf6bf076a722e0ac941</fieldentry>
29
+ </qtimetadatafield>
30
+ </qtimetadata>
31
+ </itemmetadata>
32
+ <presentation>
33
+ <material>
34
+ <mattext texttype="text/html">&lt;div&gt;&lt;p&gt;Is this an old quiz?&lt;/p&gt;&lt;/div&gt;</mattext>
35
+ </material>
36
+ <response_lid ident="response1" rcardinality="Single">
37
+ <render_choice>
38
+ <response_label ident="5972">
39
+ <material>
40
+ <mattext texttype="text/plain">True</mattext>
41
+ </material>
42
+ </response_label>
43
+ <response_label ident="5959">
44
+ <material>
45
+ <mattext texttype="text/plain">False</mattext>
46
+ </material>
47
+ </response_label>
48
+ </render_choice>
49
+ </response_lid>
50
+ </presentation>
51
+ <resprocessing>
52
+ <outcomes>
53
+ <decvar maxvalue="100" minvalue="0" varname="SCORE" vartype="Decimal"/>
54
+ </outcomes>
55
+ <respcondition continue="No">
56
+ <conditionvar>
57
+ <varequal respident="response1">5972</varequal>
58
+ </conditionvar>
59
+ <setvar action="Set" varname="SCORE">100</setvar>
60
+ </respcondition>
61
+ </resprocessing>
62
+ </item>
63
+ <item ident="g566842feff3b50f778290f11021b365e" title="Question">
64
+ <itemmetadata>
65
+ <qtimetadata>
66
+ <qtimetadatafield>
67
+ <fieldlabel>question_type</fieldlabel>
68
+ <fieldentry>essay_question</fieldentry>
69
+ </qtimetadatafield>
70
+ <qtimetadatafield>
71
+ <fieldlabel>points_possible</fieldlabel>
72
+ <fieldentry>1.0</fieldentry>
73
+ </qtimetadatafield>
74
+ <qtimetadatafield>
75
+ <fieldlabel>original_answer_ids</fieldlabel>
76
+ <fieldentry></fieldentry>
77
+ </qtimetadatafield>
78
+ <qtimetadatafield>
79
+ <fieldlabel>assessment_question_identifierref</fieldlabel>
80
+ <fieldentry>gfc230151001d8b7ba5325da6b895c0e3</fieldentry>
81
+ </qtimetadatafield>
82
+ </qtimetadata>
83
+ </itemmetadata>
84
+ <presentation>
85
+ <material>
86
+ <mattext texttype="text/html">&lt;div&gt;&lt;p&gt;Write an essay about banks&lt;/p&gt;&lt;/div&gt;</mattext>
87
+ </material>
88
+ <response_str ident="response1" rcardinality="Single">
89
+ <render_fib>
90
+ <response_label ident="answer1" rshuffle="No"/>
91
+ </render_fib>
92
+ </response_str>
93
+ </presentation>
94
+ <resprocessing>
95
+ <outcomes>
96
+ <decvar maxvalue="100" minvalue="0" varname="SCORE" vartype="Decimal"/>
97
+ </outcomes>
98
+ <respcondition continue="No">
99
+ <conditionvar>
100
+ <other/>
101
+ </conditionvar>
102
+ </respcondition>
103
+ </resprocessing>
104
+ </item>
105
+ </section>
106
+ </assessment>
107
+ </questestinterop>