3.3.3. 構文

XML ルールの他の要素で使用する、一致するパターンを指定するパラメーターを定義できます。これにより、複雑なマッチング式のパターンを単純化することができます。

<where> 要素を使用してパラメーターを定義します。param 属性を使用してパラメーター名を指定し、<matches> 要素を使用してパターンを指定します。このパラメーターは、構文 {<PARAM_NAME>} を使用して、ルール定義の他の場所で参照できます。

完全な XML ルールスキーマ を表示できます。

以下のルール例は、(activeio|activemq) パターンを指定する subpackage という名前のパラメーターを定義します。

<rule id="generic-catchall-00600">
  <when>
    <javaclass references="org.apache.{subpackage}.{*}">
    </javaclass>
  </when>
  <perform>
    ...
  </perform>
  <where param="subpackage">
    <matches pattern="(activeio|activemq)" />
  </where>
</rule>

subpackage で定義されたパターンは <javaclass> references 属性で置き換えられます。これにより、ルールは org.apache.activeio.* パッケージおよび org.apache.activemq.* パッケージで一致します。