Articulate Quizmaker generates Error in Moodle scorm debuglog

Hi,

We have several quizzes made in Quizmaker09, which we publish to Moodle (2.0.3). I have run several of these quizzes with the Moodle Scorm Debug API turned on. And I noticed that they generate some errors.

Apparantly this has something to do with the length of the answer options. Some of our answer options have quite long answers, with more than 255 characters.

It concerns for instance a line like (the author of this quiz considers the content  of the quiz as highly confidential, so i’ve replaced the actual content):

Normal 0 21 false false false oNotPromoteQF /> NL X-NONE X-NONE MicrosoftInternetExplorer4 Fri, 5 Aug 2011 10:32:33 UTC: LMSSetValue("cmi.interactions.2.correct_responses.0.pattern", "here_is_the_correct_answer_with_a_length_of_307_characters_vero_eos_et_accusamus_et_iusto_odio_dignissimos_ducimus_qui_blanditiis_praesentium_voluptatum_deleniti_atque_corrupti_quos_dolores_et_quas_molestias_excepturi_sint_occaecati_cupiditate_non_providentlibero_tempore__cum_soluta_nobis_es_eligendi_optio”) => 405

Normal 0 21 false false false NL X-NONE X-NONE MicrosoftInternetExplorer4

Fri, 5 Aug 2011 10:32:33 UTC: LMSGetErrorString("405", "Incorrect data type") => 0

I've asked about this on the moodle forum, and the people there pointed me to some resources. With these references (especially SCORM_1.2_RunTimeEnv.pdf at adlnet.gov) I was able to figure out the following:

  • the data type of cmi.interactions.N.correct_responses.N.pattern, and of cmi.interactions.N.student_response depends on the type of question (cmi.interactions.N.type)
  • apparantly, when the question is a Choice-guestion, both these options can only contain 1 character "Each possible response is limited to a  single character". 
  • and: "If there are more than 26 possibilities, then a performance type response must be used"
  • and the format for perfomance is "an alpha-numeric field limited to 255 characters"

So indeed: the number of characters is too long. What I see Articulate doing, is not putting a Letter or Number, but the whole choice option as is presented to the student.

  • So if the anwer options are: "Coffee and a croissant", "Cereals and milk" and "I don't do breakfast, period", and i would choose the third one, Articulate apparantly sets cmi.interactions.N.student_response to "I_don_t_do_breakfast__period"

What is nice about that, is that the track details in de Scorm Reports (http://docs.moodle.org/20/en/SCORM_reports) actually make more sense.Than if the correct responses would be recorded as "A" or "B"

But the downside is, is that to benefit from this, you must make sure that the answers are never more than 255 characters. As a result of the error generated by in the Long answer, the result of the question does not get communicated to Moodle: it cannot be found in the track details. 

Would it be possible to trim the strings before sending them? That way at least the correct/incorrect information ends up in the Moodle Scorm report.

Sincerely,

Sytske van Hasselt

8 Replies
Brian Batt

Hi Sytske,

It's not currently possible to trim the amount or type of data that we're sending.  I'd recommend checking out the link below for possible solutions:

http://www.articulate.com/support/presenter09/kb/?p=1067

If your installation of Moodle supports SCORM 2004 3rd Edition, I'd recommend testing your content using that spec to see if you get better results.

Sytske van Hasselt

Hi Brian,

Thanks for you reply. The thing is: we don't have problems with the Suspend-data. The quiz we posted does not allow resume. The problem occurs in the communication between Scorm-package and Moodle during the quiz. Moodle (at least: 2.0.3, which we use) records the trackdata in its database. The problem is, that when "cmi.interactions.N.correct_responses.N.pattern" or " Normal 0 21 false false false oNotPromoteQF /> NL X-NONE X-NONE /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin-top:0cm; mso-para-margin-right:0cm; mso-para-margin-bottom:10.0pt; mso-para-margin-left:0cm; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;}"cmi.interactions.N.student_response.N.pattern" are too long, the actual result (" Normal 0 21 false false false NL X-NONE X-NONE /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin-top:0cm; mso-para-margin-right:0cm; mso-para-margin-bottom:10.0pt; mso-para-margin-left:0cm; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;}cmi.interactions_N.result") doesn't get recorded as well.

Unfortunatly, Moodle doesn't support SCORM2004 very well.

so there is no way to make sure that in the 'statement'patterns, only say 250 characters of the answer are transmitted? Something like:

Normal 0 21 false false false NL X-NONE X-NONE /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin-top:0cm; mso-para-margin-right:0cm; mso-para-margin-bottom:10.0pt; mso-para-margin-left:0cm; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;}

LMSSetValue("cmi.interactions.2.correct_responses.0.pattern","here_is_the_correct_answer_with_a_length_of_307_characters__but_trimmed_to_a_max_of_250_characters_vero_eos_et_accusamus_et_iusto_odio_dignissimos_ducimus_qui_blanditiis_praesentium_voluptatum_deleniti_atque_corrupti_quos_dolores__string_chopped_here")  Normal 0 21 false false false NL X-NONE X-NONE /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin-top:0cm; mso-para-margin-right:0cm; mso-para-margin-bottom:10.0pt; mso-para-margin-left:0cm; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;}=> 0

Sytske van Hasselt

** O, sorry, don't know what happened to my post there. I'll redo it, from Notepad:**

Hi Brian,

Thanks for you reply, and the pointers.

The thing is: we don't have problems with the Suspend-data. The quiz we posted does not allow resume. The problem occurs in the communication between Scorm-package and Moodle during the quiz. Moodle (at least: 2.0.3, which we use) records the trackdata in its database. The problem is, that when "cmi.interactions.N.correct_responses.N.pattern" or "cmi.interactions.N.student_response.N.pattern" are too long, the actual result ("cmi.interactions_N.result") doesn't get recorded as well.

Unfortunatly, Moodle doesn't support SCORM2004 very well.

So there is no way to make sure that in the 'statement' patterns, only say 250 characters of the answer are transmitted? Something like:

LMSSetValue("cmi.interactions.2.correct_responses.0.pattern","here_is_the_correct_answer_with_a_length_of_307_characters__but_trimmed_to_a_max_of_250_characters_vero_eos_et_accusamus_et_iusto_odio_dignissimos_ducimus_qui_blanditiis_praesentium_voluptatum_deleniti_atque_corrupti_quos_dolores__string_chopped_here")  => 0