[Xerte] passing scores through to the scorm api

Hamish Dewe hamish.dewe at gmail.com
Tue Jun 23 23:15:14 BST 2009


Thanks for the pointer Julian.

I've found a method that works for me, so I'll post it here just on the 
off chance that it's useful for others.

Moodle (1.93) only partially supports SCORM 2004, so I went with their 
implementation of the api for 1.2.
Dealing with setting, extracting and processing cmi.suspend_data looked 
to be too convoluted.
My answer was to use cmi.objectives.n.score.[min/max/raw] (n is an 
integer, starting from 0,My proof of concept SCO sends these to the LMS 
using setValue() on submission of each exercise, keeps a running tally 
and sends cmi.core.score.[min/max/raw] to the LMS on exit. Moodle keeps 
these records in table 'mdl_scorm_scoes_track' where 'mdl_' is the 
default table prefix. For students resuming the piece, these values can 
be returned via the api in the usual way (getValue()).

If anyone's looking at what Moodle currently supports, check the 
individual data models in ../moodle/mod/scorm/datamodels/scorm_[12/13]js.php

Hamish

Julian Tenney wrote:
> setValue('cmi.core.score.raw', 90);
>  
> to set a score of 90. You need to read up on the various SCORM data 
> you can set, and you need to understand which version is implemented 
> on your LMS (probably 1.2?). 'cmi.core.score.raw'is the name of one of 
> the elements of the SCORM data model - refer to the SCORM 
> documentation for others you can get / set. Make sure you refer to the 
> right version for the SCORM implemented on your LMS.
>  
> Setting scores for each question is difficult - not because of Xerte, 
> but because of the way the SCORM works.
>  
> You can write a string into cmi.suspend_data of your choosing, so that 
> could be something like 1,0,0,1,0,1,1,1,1,0 to track individual 
> quetion responses, but you will have to find out if you can easily 
> extract that data from the LMS later when you want o review it, and 
> then you'll need something to process it. In WebCT there is no way to 
> do that from suspend_data. It is a general grumble of mine that SCORM 
> is badly implemented on a lot of LMSs. The last time I checked moodle, 
> it claimed to support SCORM 2004, but it didn't work. I imagine this 
> has been addressed by now. With moodle at least you can get at the 
> database itself and extract results.
>  
> There are others on the list using SCORM more than I do..? Any better 
> ideas?
>
> ------------------------------------------------------------------------
> *From:* xerte-bounces at lists.nottingham.ac.uk on behalf of Hamish Dewe
> *Sent:* Sun 21/06/2009 09:44
> *To:* xerte at lists.nottingham.ac.uk
> *Subject:* [Xerte] passing scores through to the scorm api
>
> Hi,
>
> I've been teaching myself to script Xerte through the supplied help
> files. All's going well so far except for one thing:
>
> when I place my scorm module in the LMS (Moodle), the Xerte package only
> reports completion and time. Can anyone point me towards a guide on how
> I can extend this to report scores for a Xerte package, or even better,
> individual scores for individual questions? The help file entry
> setValue() is a little too terse to be of much use to me!
>
> thanks
> Hamish
> _______________________________________________
> Xerte mailing list
> Xerte at lists.nottingham.ac.uk
> http://lists.nottingham.ac.uk/mailman/listinfo/xerte
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Xerte mailing list
> Xerte at lists.nottingham.ac.uk
> http://lists.nottingham.ac.uk/mailman/listinfo/xerte
>   



More information about the Xerte mailing list