code: @Override
      public void evaluate(KnowledgeHelper arg0, WorkingMemory arg1) {
          @SuppressWarnings("unchecked")
          List<TemporalProposition> pl = (List<TemporalProposition>) arg0
                  .get(arg0.getDeclaration("result"));
          Comparator<TemporalProposition> comp;
          if (this.reverse) {
              comp = ProtempaUtil.REVERSE_TEMP_PROP_COMP;
          } else {
              comp = ProtempaUtil.TEMP_PROP_COMP;
          }
          Collections.sort(pl, comp);
          this.copier.grab(arg0);
          if (this.merged) {
              mergedInterval(arg0, pl);
          } else {
              for (ListIterator<TemporalProposition> itr = pl
                      .listIterator(this.minIndex); itr.hasNext()
                      && itr.nextIndex() < this.maxIndex;) {
                  TemporalProposition o = itr.next();
                  o.accept(this.copier);
              }
          }
          this.copier.release();
      }
docs: Called when there exist the minimum necessary number of intervals with
  the specified proposition id in order to compute the temporal slice
  corresponding to this rule.
  
  @param arg0
  a {@link KnowledgeHelper}
  @param arg1
  a {@link WorkingMemory}
  
  @see JBossRuleCreator