Feature Table/Bulk Mode Processing (IFMEFeatureTable)

A feature table is not a typical geometry, but is instead a collection of features. It is used for efficient, bulk mode processing of large numbers of features.

Schema

A feature table has a schema.

The schema defines a list of attributes in the feature table. Each attribute has a name and type. Possible attribute types are Real64, Real32, UInt64, UInt32, UInt16, UInt8, Int64, Int32, Int16, Int8, Boolean, and String. Numeric attributes additionally may have a scale and offset factor; in such cases, the applied value of the component is value x scale + offset . String attributes may additionally specify an encoding. The schema also specifies which attributes may have missing or null values.

Note that attributes may also exist on the feature that contains the feature table geometry. These attributes are assumed to apply to every feature in the feature table (that is, all features in the feature table share a common constant value).

The schema also defines a list of geometries in the feature table. Each geometry has a name. Note that feature tables are not permitted to contain feature table geometries themselves (that is, feature tables can not be nested).

Processing

In general, bulk mode processing of feature tables should be "transparent." That is, a single feature table should be treated identically to an equivalent number of individual features.

Some formats or transformers do not support feature tables. In these cases, the feature table is split into individual features that are passed one at a time. This process is called splitting.

Associated Attributes

fme_geometry = fme_aggregate