Other Key Filter Transformers
The Tester and TestFilter are not the only useful filter transformers.
The AttributeFilter transformer (#9 in the top 25) directs features on the basis of values in a chosen attribute. It is best for testing many values for a single attribute, for example:
- Is that road a Primary , Secondary, Residential, Private, or Other type of road?
- Is the forecast for sun, rain, snow, or fog?
In this example features are divided into different postal codes depending on the value of a PostalCode attribute.
If your workspace looks like this then an AttributeFilter transformer might be a better option.
In this transformer the only "operator" is to find equivalency, so you would rarely use it for arithmetical tests.
|Confused from Interopolis says...|
Dear Aunt Interop
If the Tester, TestFilter, and AttributeFilter all filter features on the basis of an attribute condition, then what’s the difference? When would I use each?
|Aunt Interop says...|
The best solution is to check out these two articles on the Safe Software blog:
- Conditional Processing in FME
- A Simple Guide to FME Filter Transformers
The AttributeRangeFilter carries out the same operation as the AttributeFilter, except that it can handle a range of numeric values instead of just a simple one-to-one match.
The AttributeRangeFilter parameters dialog has the option to generate ranges automatically from a set of user-defined extents.
The GeometryFilter (#15 in the top 25) directs features on the basis of geometry type; for example, point, line, area, ellipse.
The GeometryFilter is useful for:
- Filtering out unwanted geometry types; for example removing non-linear features before using an AreaBuilder transformer (above)
- Dividing up geometry types to write to separate destination Feature Types; for example, when writing to a geometry-restricted format such as Esri Shapefile