< Previous | Contents | Next >

4.5. Termination Behavior

Termination behavior has two intentions: to end the current attempt on the current activity and to ensure the state of the activity tree is in the most current valid state. Termination behavior acts on a termination request. It may move the current activity and may return a sequencing request.

It is important to distinguish between an activity exiting and the activity’s associated content object being taken away. How and when an activity’s associated content object is taken away is out of scope of SCORM; SCORM only requires that SCOs end communication (by calling Terminate()) prior to exiting. For more information about taking content objects away, refer to Section 2.1: Run-Time Environment Management (RTE) in the SCORM RTE book [4]. An activity exits as part of the internal sequencing representation and behaviors; it is not affected by or affects the content object being taken away.

More specifically, the current activity exits in response to a termination request if the Current Activity is Active. The LMS’s sequencing implementation must ensure that the current activity has exited so that the activity tree is in the most current valid state prior to processing any sequencing requests. However, the activity exiting may (depending on the LMS implementation) require its associated content object to be forcefully taken away to ensure the most current valid state information is available to the LMS’s sequencing implementation.


 

4.5.1. Termination Requests4.5.2. Evaluating Post Condition and Exit Action Rules4.5.3. Termination Request ProcessDuring the End Attempt ProcessDuring the Sequencing Exit Action Rules SubprocessDuring the Sequencing Post Condition Rules Subprocess4.5.4. End Attempt Process