/// <summary>
 /// Called when input for rule is valid
 /// </summary>
 protected virtual void OnDataValid()
 {
     DataValid?.Invoke();
 }