code: function(context) {
          var i, len;
          switch(this.type) {
              case OpenLayers.Filter.Logical.AND:
                  for (i=0, len=this.filters.length; i<len; i++) {
                      if (this.filters[i].evaluate(context) == false) {
                          return false;
                      }
                  }
                  return true;
                  
              case OpenLayers.Filter.Logical.OR:
                  for (i=0, len=this.filters.length; i<len; i++) {
                      if (this.filters[i].evaluate(context) == true) {
                          return true;
                      }
                  }
                  return false;
              
              case OpenLayers.Filter.Logical.NOT:
                  return (!this.filters[0].evaluate(context));
          }
          return undefined;
      }
docs: APIMethod: evaluate
  Evaluates this filter in a specific context.
  
  Parameters:
  context - {Object} Context to use in evaluating the filter.  A vector
  feature may also be provided to evaluate feature attributes in
  comparison filters or geometries in spatial filters.
  
  Returns:
  {Boolean} The filter applies.