¿Cómo puedo forzar una directiva de validación angular para ejecutar?

He creado una directiva de validación para mi formulario. Básicamente, valida un valor de campo basado en datos de otro campo.

Funciona perfecto :-)

Mi problema es que si el otro campo cambia después de que se ejecutó la validación, la validación no se ejecutará de nuevo.

var myApp = angular.module('myApp', [])

.directive('validateInteger', function() {
  return {
    require: 'ngModel',
    link: function(scope, elm, attrs, ctrl) {
      ctrl.$parsers.unshift(function(viewValue) {
          var int1val = scope.int1;
          scope.int2valid = (viewValue > int1val) ? "valid" : undefined;
          if (scope.int2valid == "valid") {
              ctrl.$setValidity('higher', true);
              return viewValue;
          } else {
              ctrl.$setValidity('higher', false);
              return undefined;
        }
      });
    }
  };
});

jsfiddlehttp://jsfiddle.net/hanspc/vCFFQ/

Respuestas a la pregunta(2)

Su respuesta a la pregunta