code: function(filter, options) {
          options = OpenLayers.Util.extend({}, options);
          OpenLayers.Util.applyDefaults(options, this.options);    
          
          var response = new OpenLayers.Protocol.Response({
              requestType: "commit"
          });    
          
          var root = this.format.createElementNSPlus("wfs:Transaction", {
              attributes: {
                  service: "WFS",
                  version: this.version
              }
          });
          
          var deleteNode = this.format.createElementNSPlus("wfs:Delete", {
              attributes: {
                  typeName: (options.featureNS ? this.featurePrefix + ":" : "") +
                      options.featureType
              }
          });       
          
          if(options.featureNS) {
              deleteNode.setAttribute("xmlns:" + this.featurePrefix, options.featureNS);
          }
          var filterNode = this.format.writeNode("ogc:Filter", filter);
          
          deleteNode.appendChild(filterNode);
          
          root.appendChild(deleteNode);
          
          var data = OpenLayers.Format.XML.prototype.write.apply(
              this.format, [root]
          );
          
          return OpenLayers.Request.POST({
              url: this.url,
              callback : options.callback || function(){},
              data: data
          });   
          
      }
docs: Method: filterDelete
  Send a request that deletes all features by their filter.
  
  Parameters:
  filter - {<OpenLayers.Filter>} filter