org.opengis.filter
Interface Filter

All Known Subinterfaces:
And, BBOX, Beyond, BinaryComparisonOperator, BinaryLogicOperator, BinarySpatialOperator, BoundedSpatialOperator, Contains, Crosses, Disjoint, DistanceBufferOperator, DWithin, Equals, Id, Intersects, Not, Or, Overlaps, PropertyIsBetween, PropertyIsEqualTo, PropertyIsGreaterThan, PropertyIsGreaterThanOrEqualTo, PropertyIsLessThan, PropertyIsLessThanOrEqualTo, PropertyIsLike, PropertyIsNotEqualTo, PropertyIsNull, SpatialOperator, Touches, Within
All Known Implementing Classes:
ExcludeFilter, IncludeFilter

@XmlElement(value="Filter")
public interface Filter

Fefines a constraint that can be checked against an instance of an Object (usually a Feature).

Often a filter is used to to define a set feature instances that are to be operated upon. The operating set can be comprised of one or more enumerated features or a set of features defined by specifying spatial and non-spatial constraints on the geometric and scalar properties of a feature type.

Roughly speaking, a filter encodes the information present in the WHERE clause of a SQL statement. There are various subclasses of this class that implement many types of filters, such as simple property comparisons or spatial queries.

The second use of Filter focuses on expressing constraints (or Facets). This use places restrictions on the allowable and is captured as part of schema information (@linkplain FeatureType). This is similar to the XML concept of "facets".

Since:
GeoAPI 2.0
Version:
Implementation specification 1.0

Field Summary
static ExcludeFilter EXCLUDE
          Placeholder Filter that evaulates to false.
static IncludeFilter INCLUDE
          Placeholder Filter that evaulates to true.
 
Method Summary
 Object accept(FilterVisitor visitor, Object extraData)
          Accepts a visitor.
 boolean evaluate(Object object)
          Give an object, this method determines if the test(s) represented by this filter object are passed.
 

Field Detail

INCLUDE

static final IncludeFilter INCLUDE
Placeholder Filter that evaulates to true.

Filtering a set with Filter.INCLUDE results in the origional set.


EXCLUDE

static final ExcludeFilter EXCLUDE
Placeholder Filter that evaulates to false.

Filtering a set with Filter.EXCLUDE results in the Empty Set.

Method Detail

evaluate

boolean evaluate(Object object)
Give an object, this method determines if the test(s) represented by this filter object are passed.

This ability is used to allow Queries against both Features and and non spatial data (such as Record) and to express constraints on permissable data values.

Parameters:
object -
Returns:
true if the test(s) are passed for the provided object

accept

@Extension
Object accept(FilterVisitor visitor,
                        Object extraData)
Accepts a visitor.

Implementations of all subinterfaces must have with a method whose content is the following:

return visitor.visit(this, extraData);



Copyright © 1994-2008 Open Geospatial Consortium. All Rights Reserved.