OpenLayers v4.0.1 API - Namespace: filter

# Namespace: filter

This documentation is for OpenLayers v4.0.1. The latest is v.

## ol.format.filter

This namespace contains convenience functions to create filters for `ol.format.WFS#writeGetFeature`.

For example to generate a `GetFeature` request with a `PropertyIsEqualTo` filter:

      var request = new ol.format.WFS().writeGetFeature({
        srsName: 'urn:ogc:def:crs:EPSG::4326',
        featureNS: 'http://www.openplans.org/topp',
        featurePrefix: 'topp',
        featureTypes: ['states'],
        filter: ol.format.filter.equalTo('name', 'New York')
      });

Or to combine a `BBOX` filter with a `PropertyIsLike` filter:

      var f = ol.format.filter;
      var request = new ol.format.WFS().writeGetFeature({
        srsName: 'urn:ogc:def:crs:EPSG::4326',
        featureNS: 'http://www.openplans.org/topp',
        featurePrefix: 'topp',
        featureTypes: ['states'],
        filter: f.and(
          f.bbox('the_geom', [1, 2, 3, 4], 'urn:ogc:def:crs:EPSG::4326'),
          f.like('name', 'New*')
        )
      });

### Classes

And
Bbox
Comparison
ComparisonBinary
EqualTo
Filter
GreaterThan
GreaterThanOrEqualTo
Intersects
IsBetween
IsLike
IsNull
LessThan
LessThanOrEqualTo
LogicalNary
Not
NotEqualTo
Or
Spatial
Within

### Methods

#### ol.format.filter.and(conditions){ol.format.filter.And}

src/ol/format/filter.js, line 27

  Create a logical `<And>` operator between two or more filter conditions.

  Name | Type | Description
  --- | --- | ---
  `conditions` | ol.format.filter.Filter | Filter conditions.

  ##### Returns:

  `<And>` operator.

#### ol.format.filter.bbox(geometryName, extent, opt_srsName){ol.format.filter.Bbox}

src/ol/format/filter.js, line 69

  Create a `<BBOX>` operator to test whether a geometry-valued property intersects a fixed bounding box

  Name | Type | Description
  --- | --- | ---
  `geometryName` | string | Geometry name to use.
  `extent` | ol.Extent | Extent.
  `srsName` | string | SRS name. No srsName attribute will be set on geometries when this is not provided.

  ##### Returns:

  `<BBOX>` operator.

#### ol.format.filter.between(propertyName, lowerBoundary, upperBoundary){ol.format.filter.IsBetween}

src/ol/format/filter.js, line 207

  Creates a `<PropertyIsBetween>` comparison operator to test whether an expression value lies within a range given by a lower and upper bound (inclusive).

  Name | Type | Description
  --- | --- | ---
  `propertyName` | string | Name of the context property to compare.
  `lowerBoundary` | number | The lower bound of the range.
  `upperBoundary` | number | The upper bound of the range.

  ##### Returns:

  `<PropertyIsBetween>` operator.

#### ol.format.filter.equalTo(propertyName, expression, opt_matchCase){ol.format.filter.EqualTo}

src/ol/format/filter.js, line 113

  Creates a `<PropertyIsEqualTo>` comparison operator.

  Name | Type | Description
  --- | --- | ---
  `propertyName` | string | Name of the context property to compare.
  `expression` | string | number | The value to compare.
  `matchCase` | boolean | Case-sensitive?

  ##### Returns:

  `<PropertyIsEqualTo>` operator.

#### ol.format.filter.greaterThan(propertyName, expression){ol.format.filter.GreaterThan}

src/ol/format/filter.js, line 166

  Creates a `<PropertyIsGreaterThan>` comparison operator.

  Name | Type | Description
  --- | --- | ---
  `propertyName` | string | Name of the context property to compare.
  `expression` | number | The value to compare.

  ##### Returns:

  `<PropertyIsGreaterThan>` operator.

#### ol.format.filter.greaterThanOrEqualTo(propertyName, expression){ol.format.filter.GreaterThanOrEqualTo}

src/ol/format/filter.js, line 179

  Creates a `<PropertyIsGreaterThanOrEqualTo>` comparison operator.

  Name | Type | Description
  --- | --- | ---
  `propertyName` | string | Name of the context property to compare.
  `expression` | number | The value to compare.

  ##### Returns:

  `<PropertyIsGreaterThanOrEqualTo>` operator.

#### ol.format.filter.intersects(geometryName, geometry, opt_srsName){ol.format.filter.Intersects}

src/ol/format/filter.js, line 84

  Create a `<Intersects>` operator to test whether a geometry-valued property intersects a given geometry.

  Name | Type | Description
  --- | --- | ---
  `geometryName` | string | Geometry name to use.
  `geometry` | ol.geom.Geometry | Geometry.
  `srsName` | string | SRS name. No srsName attribute will be set on geometries when this is not provided.

  ##### Returns:

  `<Intersects>` operator.

#### ol.format.filter.isNull(propertyName){ol.format.filter.IsNull}

src/ol/format/filter.js, line 192

  Creates a `<PropertyIsNull>` comparison operator to test whether a property value is null.

  Name | Type | Description
  --- | --- | ---
  `propertyName` | string | Name of the context property to compare.

  ##### Returns:

  `<PropertyIsNull>` operator.

#### ol.format.filter.lessThan(propertyName, expression){ol.format.filter.LessThan}

src/ol/format/filter.js, line 140

  Creates a `<PropertyIsLessThan>` comparison operator.

  Name | Type | Description
  --- | --- | ---
  `propertyName` | string | Name of the context property to compare.
  `expression` | number | The value to compare.

  ##### Returns:

  `<PropertyIsLessThan>` operator.

#### ol.format.filter.lessThanOrEqualTo(propertyName, expression){ol.format.filter.LessThanOrEqualTo}

src/ol/format/filter.js, line 153

  Creates a `<PropertyIsLessThanOrEqualTo>` comparison operator.

  Name | Type | Description
  --- | --- | ---
  `propertyName` | string | Name of the context property to compare.
  `expression` | number | The value to compare.

  ##### Returns:

  `<PropertyIsLessThanOrEqualTo>` operator.

#### ol.format.filter.like(propertyName, pattern, opt_wildCard, opt_singleChar, opt_escapeChar, opt_matchCase){ol.format.filter.IsLike}

src/ol/format/filter.js, line 228

  Represents a `<PropertyIsLike>` comparison operator that matches a string property value against a text pattern.

  Name | Type | Description
  --- | --- | ---
  `propertyName` | string | Name of the context property to compare.
  `pattern` | string | Text pattern.
  `wildCard` | string | Pattern character which matches any sequence of zero or more string characters. Default is '*'.
  `singleChar` | string | pattern character which matches any single string character. Default is '.'.
  `escapeChar` | string | Escape character which can be used to escape the pattern characters. Default is '!'.
  `matchCase` | boolean | Case-sensitive?

  ##### Returns:

  `<PropertyIsLike>` operator.

#### ol.format.filter.not(condition){ol.format.filter.Not}

src/ol/format/filter.js, line 53

  Represents a logical `<Not>` operator for a filter condition.

  Name | Type | Description
  --- | --- | ---
  `condition` | ol.format.filter.Filter | Filter condition.

  ##### Returns:

  `<Not>` operator.

#### ol.format.filter.notEqualTo(propertyName, expression, opt_matchCase){ol.format.filter.NotEqualTo}

src/ol/format/filter.js, line 127

  Creates a `<PropertyIsNotEqualTo>` comparison operator.

  Name | Type | Description
  --- | --- | ---
  `propertyName` | string | Name of the context property to compare.
  `expression` | string | number | The value to compare.
  `matchCase` | boolean | Case-sensitive?

  ##### Returns:

  `<PropertyIsNotEqualTo>` operator.

#### ol.format.filter.or(conditions){ol.format.filter.Or}

src/ol/format/filter.js, line 40

  Create a logical `<Or>` operator between two or more filter conditions.

  Name | Type | Description
  --- | --- | ---
  `conditions` | ol.format.filter.Filter | Filter conditions.

  ##### Returns:

  `<Or>` operator.

#### ol.format.filter.within(geometryName, geometry, opt_srsName){ol.format.filter.Within}

src/ol/format/filter.js, line 99

  Create a `<Within>` operator to test whether a geometry-valued property is within a given geometry.

  Name | Type | Description
  --- | --- | ---
  `geometryName` | string | Geometry name to use.
  `geometry` | ol.geom.Geometry | Geometry.
  `srsName` | string | SRS name. No srsName attribute will be set on geometries when this is not provided.

  ##### Returns:

  `<Within>` operator.