qti 2.3.0 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/lib/qti.rb +1 -0
- data/lib/qti/models/resource.rb +26 -2
- data/lib/qti/v1/models/object_bank.rb +14 -0
- data/lib/qti/version.rb +1 -1
- data/spec/fixtures/with_banks/g9a20cf3af178b54e4792cbe992f65790/assessment_meta.xml +69 -0
- data/spec/fixtures/with_banks/g9a20cf3af178b54e4792cbe992f65790/assessment_qti.xml +99 -0
- data/spec/fixtures/with_banks/imsmanifest.xml +54 -0
- data/spec/fixtures/with_banks/non_cc_assessments/g195e078fb6e3c4054e38e5c9226287ba.xml.qti +85 -0
- data/spec/fixtures/with_banks/non_cc_assessments/g9a20cf3af178b54e4792cbe992f65790.xml.qti +107 -0
- data/spec/fixtures/with_banks/non_cc_assessments/gab22de457404cb5cf022078f1e4da75e.xml.qti +59 -0
- data/spec/fixtures/with_banks/non_cc_assessments/gf3edf8167be16b3a65a00ca923132b07.xml.qti +145 -0
- data/spec/gemfiles/rails-5.1.gemfile.lock +212 -0
- data/spec/gemfiles/rails-5.2.gemfile.lock +220 -0
- data/spec/gemfiles/rails-6.0.gemfile.lock +236 -0
- data/spec/lib/qti/models/resource_spec.rb +14 -0
- data/spec/lib/qti/v1/models/object_bank_spec.rb +39 -0
- metadata +27 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 8ecbdc7735cca56f8fca34b0386b39f8ec46df19
|
4
|
+
data.tar.gz: 34b4ca1b2a5ab79a9e6db3beb95b7dc40e9fe37c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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'
|
data/lib/qti/models/resource.rb
CHANGED
@@ -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
|
95
|
-
|
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
|
data/lib/qti/version.rb
CHANGED
@@ -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"><div><p>Is this an old quiz?</p></div></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"><div><p>Write an essay about banks</p></div></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"><div><p>This is just some text in a bank</p></div></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"><div><p>Name a letter after X</p></div></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"><div><p>Is this an old quiz?</p></div></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"><div><p>Write an essay about banks</p></div></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>
|