java.lang.Object
dev.jcputney.elearning.parser.input.scorm2004.ims.ss.sequencing.SequencingRules
All Implemented Interfaces:
Serializable

public final class SequencingRules extends Object implements Serializable
Represents a set of sequencing rules within the SCORM IMS Simple Sequencing (IMSSS) schema. Sequencing rules define specific conditions and actions that control the availability and behavior of learning activities based on the learner's progress, completion status, and interactions with the content.

Sequencing rules are used to enforce a specific flow of learning activities, applying conditions that enable, disable, hide, or skip activities. These rules can be categorized into three main types:

  • Pre-Condition Rules: Applied before an activity is attempted, to determine if it should be enabled, disabled, or hidden from the learner.
  • Exit-Condition Rules: Applied when the learner exits an activity, to define the behavior upon exit, such as retrying the activity or exiting the current sequence.
  • Post-Condition Rules: Applied after an activity has been attempted, to control subsequent sequencing actions, such as skipping an activity or marking it as complete.

Each sequencing rule contains conditions (defined in RuleConditions) that must be met for the associated action (defined in RuleAction) to be applied.

The IMSSS namespace is specified by IMSSS.NAMESPACE_URI, and this class aligns with the SCORM 2004 standards for sequencing and navigation.

See Also:
  • Constructor Details

    • SequencingRules

      public SequencingRules()
      Default constructor for the SequencingRules class.

      This constructor initializes an instance of the SequencingRules class with no initial values or properties set. It is primarily used to create a default instance of the class.

  • Method Details

    • getPreConditionRules

      public List<SequencingRule> getPreConditionRules()
      Retrieves the list of pre-condition sequencing rules. Pre-condition rules define the criteria that must be met before an activity is processed within the sequencing context.
      Returns:
      a list of SequencingRule objects representing the pre-condition rules for sequencing, or an empty list if no such rules are defined
    • setPreConditionRules

      public void setPreConditionRules(List<SequencingRule> preConditionRules)
      Sets the list of pre-condition sequencing rules for an activity. Pre-condition rules define the criteria that must be met before an activity is processed within the sequencing context.
      Parameters:
      preConditionRules - a list of SequencingRule objects representing the pre-condition rules for sequencing. Passing null will clear the current pre-condition rules.
    • getExitConditionRules

      public List<SequencingRule> getExitConditionRules()
      Retrieves the list of exit-condition sequencing rules. Exit-condition rules define the criteria that cause an activity to exit its processing context during sequencing.
      Returns:
      a list of SequencingRule objects representing the exit-condition rules for sequencing, or an empty list if no such rules are defined
    • setExitConditionRules

      public void setExitConditionRules(List<SequencingRule> exitConditionRules)
      Sets the list of exit-condition sequencing rules for an activity. Exit-condition rules define the criteria that cause an activity to exit its processing context during sequencing.
      Parameters:
      exitConditionRules - a list of SequencingRule objects representing the exit-condition rules for sequencing. Passing null will clear the current exit-condition rules.
    • getPostConditionRules

      public List<SequencingRule> getPostConditionRules()
      Retrieves the list of post-condition sequencing rules. Post-condition rules specify the criteria and actions to be evaluated after an activity completes processing within the sequencing context.
      Returns:
      a list of SequencingRule objects representing the post-condition rules for sequencing, or an empty list if no such rules are defined
    • setPostConditionRules

      public void setPostConditionRules(List<SequencingRule> postConditionRules)
      Sets the list of post-condition sequencing rules for an activity. Post-condition rules specify the criteria and actions to be evaluated after an activity completes processing within the sequencing context.
      Parameters:
      postConditionRules - a list of SequencingRule objects representing the post-condition rules for sequencing. Passing null will clear the current post-condition rules.
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object