title: Ant PMD and rule exclusion
body: <p>I have an Ant task to produce a PMD report:</p>
  
  <pre><code>&lt;pmd rulesetfiles="${commons-home}/src/main/resources/pmd/wai_ruleset.xml"&gt;
      &lt;formatter type="xml" toFile="${target.reports.pmd}/pmd-report.xml" linkPrefix="${src.main}/"/&gt;
      &lt;fileset dir="${src.main}"&gt;
          &lt;include name="**/*.java"/&gt;
      &lt;/fileset&gt;  
  &lt;/pmd&gt;
  </code></pre>
  
  <p>In <code>wai_ruleset.xml</code> I (try to) exclude <code>NullAssignment</code> from the rules:</p>
  
  <pre><code>&lt;?xml version="1.0"?&gt;
      &lt;ruleset name="WAI rule set"
          xmlns="http://pmd.sf.net/ruleset/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0 http://pmd.sf.net/ruleset_xml_schema.xsd"
          xsi:noNamespaceSchemaLocation="http://pmd.sf.net/ruleset_xml_schema.xsd"&gt;
  
      &lt;description&gt;
          WAI rules
      &lt;/description&gt;
  
      &lt;!-- imports --&gt;
      &lt;rule ref="rulesets/basic.xml"&gt;
          &lt;exclude name="CollapsibleIfStatements"/&gt;
      &lt;/rule&gt;
      &lt;rule ref="rulesets/favorites.xml"&gt;
          &lt;!-- we redefine it below with a different threshold --&gt;
          &lt;exclude name="CyclomaticComplexity" /&gt;
          &lt;!-- empty default constructors are needed by Envers --&gt;
          &lt;exclude name="UnnecessaryConstructor"/&gt;
      &lt;/rule&gt;
  
      &lt;!-- CyclomaticComplexity with a threshold of 12 --&gt;
      &lt;rule ref="rulesets/codesize.xml/CyclomaticComplexity"&gt;
          &lt;priority&gt;1&lt;/priority&gt;
          &lt;properties&gt;
              &lt;property name="reportLevel" value="12" /&gt;
          &lt;/properties&gt;
      &lt;/rule&gt;
  
      &lt;rule ref="rulesets/controversial.xml"&gt;
          &lt;exclude name="UnnecessaryConstructor"/&gt;
          &lt;exclude name="OnlyOneReturn"/&gt;
          &lt;exclude name="AssignmentInOperand"/&gt;
          &lt;exclude name="BooleanInversion"/&gt;
          &lt;exclude name="NullAssignment"/&gt;
          &lt;exclude name="DataflowAnomalyAnalysis"/&gt;
     &lt;/rule&gt;
  
  &lt;/ruleset&gt;
  </code></pre>
  
  <p>If I don't exclude <code>NullAssignment</code> I get <strong>two</strong> warnings for each assignment to null. If I exclude <code>NullAssignment</code> I still get a warning for each assignment to null.</p>
  
  <p>Which rule is generating the additional warning? Is it a bug?</p>