The cmi5 specification includes a moveOn property in the course structure? Why? What’s it there for? In this article I will attempt to end the confusion around the cmi5 moveOn property.
What is the cmi5 moveOn?
Each assignable unit (AU) in a cmi5 course has an associated “moveOn” property (see Section 13.1.4 of the cmi5 specification). The cmi5 moveOn value is used by the LMS to determine if the AU has been sufficiently completed in order to “move on” to the next AU. The following values are allowed for the moveOn property.
- Passed
If the LMS receives a statement with the verb “Passed”, then the LMS will consider the AU satisfied. Please note that if you issue a “Passed” statement and include a score, that score must exceed the masteryScore contained in the contextTemplate document of the State API. - Completed
If the LMS receives a statement with the verb “Completed”, then the LMS will consider the AU satisfied. - CompletedAndPassed
In this case the LMS must receive two statements; one with the cmi5 verb “Completed” and one with the cmi5 verb “Passed”. The AU is considered satisfied only when both statements have been received. - CompletedOrPassed
If the LMS receives a statement with either of the cmi5 verbs “Completed” or “Passed”, then the LMS will consider the AU satisfied. - NotApplicable
The LMS will consider the AU satisfied as soon as the student registers for the course.
Default Value
Unfortunately, the cmi5 moveOn property has a default value of NotApplicable. This means that if you leave the moveOn value out of the course structure for an AU, that AU will be considered “satisified” immediately upon student registration. As a content developer, it is unlikely that you intend for content to be “met” as soon as the student is registered. Therefore, be sure that you include a valid cmi5 moveOn property for each AU.
LMS Administrator may change moveOn
It is important to note that there is nothing in the specification to prevent the LMS Administrator from changing the cmi5 moveOn criteria (see Section 10 of the cmi5 specification). For this reason the specification requires that the LMS write the current value of the moveOn property to the State API document. LMS Administrators should use caution when changing the moveOn property: the AU may not have the capability of sending statements required by any moveOn value that was not in the original course structure.
For more information on cmi5, be sure and check out this blog’s xAPI and cmi5 category.