第5章 ルールのオーバーライド
MTA で (またはカスタムルールでも)、配布されるコアルールをオーバーライドできます。たとえば、ルールに一致する条件、作業、またはヒントテキストを変更できます。これは、元のルールのカスタムコピーを作成し、それをルールオーバーライドとしてマークし、必要な調整を行うことで行われます。これと同じ方法でルールを無効にすることもできます。
5.1. ルールのオーバーライド リンクのコピーリンクがクリップボードにコピーされました!
次の手順を使用して、ルールをオーバーライドできます。
オーバーライドするルールが含まれる XML ファイルをカスタムの rules ディレクトリーにコピーします。
カスタムルールは、
RHAMT_HOME/rules、${user.home}/.rhamt/rules/、または--userRulesDirectoryコマンドライン引数で指定されたディレクトリーのいずれかに配置できます。XML ファイルを編集し、オーバーライドするルールの
<rule>要素のみを保持します。新しいルールセットでオーバーライドされていない元のルールセットのルールは、通常どおり実行されることに注意してください。
- 同じルールとルールセット ID を保持するようにしてください。元のルール XML をコピーすると、ID が一致します。
-
<overrideRules>true</overrideRules>エントリーをルールセットメタデータに追加します。 必要に応じてルールを調整します。
ルール定義では、すべてを変更することができます。このルールは元のルール全体をオーバーライドします。
以下は、オーバーライドされたルールの例です。ルールセットメタデータの <overrideRules>true</overrideRules> 要素に注意してください。ルールとルールセット ID は元のものと一致します。このルールのオーバーライドにより、必要な作業が 1 から 3 に変わりました。
MTA を実行すると、ルール ID が一致する元のルールの代わりにこのルールが使用されるようになります。Rule Provider Executions Overview の内容を確認して、新規ルールが使用されていることを確認できます。