adaptlearning / adapt_framework

A toolkit for creating responsive, accessible, multilanguage HTML5 e-learning courses.
https://www.adaptlearning.org/
GNU General Public License v3.0
577 stars 248 forks source link

contrib-spoor: type "sequencing" #2008

Closed aut0poietic closed 4 years ago

aut0poietic commented 6 years ago

Enhancement: Add 'sequencing' type

In building a A11y Drag & Drop ordering component, I found that the 'sequencing' type was not supported.

For now, my component is using "matching," but support for the sequencing type would be useful.

For implementation details, type sequencing asks that cmi.interactions.n.student_response be set to a comma separated list of identifiers ( I'm assuming single characters a-z, 0-9 but I could be wrong ).

If you're welcoming new contributors, I could take a shot at it. This part of ScormWrapper doesn't seem to complex.

moloko commented 6 years ago

hi @aut0poietic I've previously just used 'matching' for this type of interaction but appreciate that for a 'put items in order' drag and drop interaction then 'sequencing' does make more sense.

If you want to have a go at this, please feel free!

Oh and you're right about the format, the SCORM 1.2 docs describe this as 'A series of single characters separated by commas. Legal characters are 0 to 9 and a to z. The order of the characters determines the correctness of the feedback.' In the SCORM 2004 docs it's described as 'bag of array (0..35) of short_identifier_type' (no I have no idea either)

moloko commented 4 years ago

@aut0poietic is this something you'd still like to take a shot at? if not I'll close this off

aut0poietic commented 4 years ago

@moloko I completely forgot about this -- back when I first posted I had a fork that added 'sequencing' -- but that was framework 2.4 (if memory serves). I'll have to take a pass for now. I'm still wrapping my head around some of the changes for question components in current framework/spoor versions.

If the day-job allows me some time to dig into (probably months from now), I'll open a new issue/pull.