[Geoserver-devel] Filter Encoding - Problems With 'Not'

Hello list,

I'm having some difficulty with a query sent to geoserver 1.2.3. It
seems that the following Filter structure fails:
<And>
  <Or>
    <Not>
      <PropertyIsEqualTo.../>
    </Not>
    <PropertyIsEqualTo.../>
  </Or>
  <PropertyIsEqualTo.../>
</And>

The error message returned by geoserver is:
      org.xml.sax.SAXException: Attempted to construct illegal filter:
Logic Factory got an end message that it can't process.

Whereas the same structure without the Not element returns features. Is
this just a bad filter request on my part, or a bug?

The full query as submitted to geoserver follows.

<?xml version="1.0" encoding="UTF-8"?>
<wfs:GetFeature xmlns:wfs="http://www.opengis.net/wfs&quot;
xmlns:ogc="http://www.opengis.net/ogc&quot;
xmlns:gml="http://www.opengis.net/gml&quot; service="WFS" version="1.0.0"
outputFormat="GML2" maxFeatures="100">
  <wfs:Query typeName="idt:ogma">
    <ogc:Filter>
      <ogc:And>
        <ogc:Or>
          <ogc:Not>
            <ogc:PropertyIsEqualTo>
              <ogc:PropertyName>SUMMARY</ogc:PropertyName>
              <ogc:Literal>Brittain CWH dm</ogc:Literal>
            </ogc:PropertyIsEqualTo>
          </ogc:Not>
          <ogc:PropertyIsEqualTo>
            <ogc:PropertyName>BEC_LABLE</ogc:PropertyName>
            <ogc:Literal>CWH dm</ogc:Literal>
          </ogc:PropertyIsEqualTo>
        </ogc:Or>
        <ogc:PropertyIsEqualTo>
          <ogc:PropertyName>LSU</ogc:PropertyName>
          <ogc:Literal>Brittain</ogc:Literal>
        </ogc:PropertyIsEqualTo>
      </ogc:And>
    </ogc:Filter>
  </wfs:Query>
</wfs:GetFeature>

Thanks,

John Fletcher