CakePHP3のバリデーションで指定するルール名の用途は？


CakePHP3のバリデーションで質問です。  
バリデーションを定義する時に使うaddメソッドでルール名を指定すると思いますが、このルール名はいったい何に使うのでしょうか？何にすべきかよくわからず、適当に命名しています。わざわざ命名するからには何かで利用することがあると思うのですが、そこがよく分かりません。  
下記のソースの例では、全てのaddメソッドでルール名に'valid'を指定しています。

[code]

    class UsersTable extends Table
    {
        // ...
        public function validationDefault(Validator $validator)
        {
            $validator
                ->add('id', 'valid', ['rule' => 'numeric'])
                ->allowEmpty('id', 'create');
    
            $validator
                ->add('name', 'valid1', ['rule' => 'alphaNumeric'])
                ->add('name', 'valid2', ['rule' => ['minLength', 10]])
                ->notEmpty('name');
    
            $validator
                ->add('email', 'valid', ['rule' => 'email'])
                ->notEmpty('email');
    
            //...
            return $validator;
        }
        //...
    }
    
[/code]




バリデーションルールを動的に制御したい場合のルール識別子として利用します。  
たとえばValidatorクラスにはremoveメソッドがありますが、  
<http://api.cakephp.org/3.0/class-Cake.Validation.Validator.html#_remove>  
このメソッドの第2引数にあたります。

[code]

    $validator->remove('name', 'valid2');
    
[/code]




バリデーションルールを動的に制御したい場合のルール識別子として利用します。  
たとえばValidatorクラスにはremoveメソッドがありますが、  
<http://api.cakephp.org/3.0/class-Cake.Validation.Validator.html#_remove>  
このメソッドの第2引数にあたります。

[code]

    $validator->remove('name', 'valid2');
    
[/code]

