Forum Discussion
Everything we know about Cornerstone on Demand and Storyline!
The example above was for SCORM 1.2. You'll see different data model calls in SCORM 2004. For example, lesson_status is completion_status in 2004.
Part 2 of the long explanation. In a conformant LMS, all of the runtime calls listed in the reference model can be called from the browser using Javascript. This means even if the content (storyline) doesn't have it built in, you could use Javascript to access the API to set or get values.
Example, if you wanted to add something to the comments data field, you could call LMSSetValue on the cmi.comments_from_learner.n.comment and store away some text. You'd need a way to retrieve that within the module since you cannot report this data in CSOD.
Storyline stores quiz responses in the cmi.interactions data elements. This can be reported using CSOD. There are a lot of cmi-interactions... calls when a question is submitted. Not that only questions associated with the results slide used to track completion of your module will be submitted by Storyline. There are neat things you can do to store values using a quiz question.
Another note, Storyline uses a standard API to submit to the LMS. But the player uses an abstraction of functions to reach that end. If you want to communicate with the LMS directly, you can choose to use the standard LMS API calls in Javascript, or use Storyline's abstracted functions.
Example direct call:
LMSSetValue('cmi.core.score.max', '100')
... and all of the other score setting calls (raw, min)
or Storyline's player functions:
lmsAPI=parent;
lmsAPI.SetScore(90, 100, 0);
SetStatus("completed")
I've found the manual calls to be less reliable and subject to change so much of the time, I have been setting them directly using the standard calls. It's more script but I know it's going to go through even if Articulate changes something in their player functions.