Class: Qti::Models::Manifest
- Inherits:
-
Base
- Object
- Base
- Qti::Models::Manifest
show all
- Defined in:
- lib/qti/models/manifest.rb
Constant Summary
collapse
- RESOURCE_QTI_TYPES =
%w[imsqti_test_xmlv2p1
imsqti_test_xmlv2p2
imsqti_xmlv1p2].freeze
- ASSESSMENT_CLASSES =
{
'imsqti_xmlv1p2' => Qti::V1::Models::Assessment,
'imsqti_test_xmlv2p1' => Qti::V2::Models::AssessmentTest,
'imsqti_test_xmlv2p2' => Qti::V2::Models::AssessmentTest
}.freeze
- EMBEDDED_QTI_TYPES =
%w[imsqti_item_xmlv2p1
imsqti_item_xmlv2p2].freeze
- EMBEDDED_NON_ASSESSMENT_ID =
'@embedded_non_assessment'.freeze
Constants inherited
from Base
Base::ELEMENTS_REMAP
Instance Attribute Summary
Attributes inherited from Base
#doc, #manifest, #package_root, #path
Instance Method Summary
collapse
Methods inherited from Base
#css_with_single_check, from_path!, #initialize, #object_tag_transformer, #parse_html, #parse_xml, #preprocess_xml_doc, #remap_href_path, #remap_unknown_tags_transformer, #sanitize_config, #sanitize_content!, #xpath_with_single_check
Instance Method Details
#assessment_identifiers(embedded_as_assessment = true) ⇒ Object
33
34
35
36
37
|
# File 'lib/qti/models/manifest.rb', line 33
def assessment_identifiers(embedded_as_assessment = true)
id_list = identifier_list('/assessment')
return id_list + [EMBEDDED_NON_ASSESSMENT_ID] if embedded_as_assessment && embedded_non_assessment?
id_list
end
|
#assessment_test(resource_id = nil) ⇒ Object
22
23
24
25
26
27
|
# File 'lib/qti/models/manifest.rb', line 22
def assessment_test(resource_id = nil)
resource_id ||= assessment_identifiers.first
test = assessment_from_identifier(resource_id)
test.manifest = self
test
end
|
#identifier_list(rsc_type) ⇒ Object
43
44
45
46
47
|
# File 'lib/qti/models/manifest.rb', line 43
def identifier_list(rsc_type)
RESOURCE_QTI_TYPES.map do |v|
xmlns_resource_list("[#{rtype_predicate(v, rsc_type)}]").map { |r| r[:identifier] }
end.flatten
end
|
#question_bank_identifiers ⇒ Object
39
40
41
|
# File 'lib/qti/models/manifest.rb', line 39
def question_bank_identifiers
identifier_list('/question-bank')
end
|
#raise_unsupported ⇒ Object
29
30
31
|
# File 'lib/qti/models/manifest.rb', line 29
def raise_unsupported
raise Qti::UnsupportedSchema, 'Unsupported QTI version'
end
|