IBM Informix Spatial Writer: Feature Type Parameters

To access feature type parameters, click the gear icon on a feature type in the workspace to open the Feature Type Parameter Editor. To always display the editor in Workbench, you can select View > Windows > Parameter Editor.

General

All feature types share similar General parameters, which may include the Feature Type Name, Reader or Writer Name, and Geometry.

In most Writer Feature Type parameter dialogs, you can also control Dynamic Schema Definitions. Some database formats accept a Table Qualifier prefix on the output table feature type.

See Editing Writer Feature Types for more information.

These parameters apply only to a selected feature type, not to the entire writer.

Tip: If a feature type parameter listed here conflicts with a writer-level parameter, then the writer parameter will be ignored and this feature type parameter will be used.

The configuration parameters present are described in the following table:

Parameter

Contents

infx_type

This specifies the type of geometry the features to be written to the layer will have.

infx_overwrite_table

This parameter can be set to one of <YES|NO|TRUNCATE>.

  • YES: The table will be dropped if it exists, and then created.
  • NO: The table will be created if it does not exist.
  • TRUNCATE: The table will be created if it does not exist. If the table exists, all the rows from the table will be deleted.

infx_update_key_
columns

This instructs the Informix Spatial writer to perform an UPDATE operation on the table, rather than performing an INSERT. The argument is a comma-separated list of the columns which are matched against the corresponding FME attributes’ values to specify which rows are to be updated with the other attribute values.

For example:

infx_update_key_columns ID,NAME

In this case the FME attribute is always matched against the Informix column with the same name. Also, the target table is always the feature type specified in the DEF line. Each column listed with the infx_update_key_columns directive must be defined with a type on the DEF line, in addition to the columns whose values will be updated by the operation. This cannot be used with infx_delete_key_columns. Also, the keys cannot be of type BLOB, CLOB, or LONG_VARCHAR.

infx_delete_key_
columns

This instructs the Informix Spatial writer to perform a DELETE operation on the table, rather than performing an INSERT. The argument is a comma-separated list of the columns which are matched against the corresponding FME attributes’ values to specify which rows are to be deleted when their values match the other attribute values.

For example:

infx_delete_key_columns ID,NAME

would delete those rows in the table whose values match the attribute values passed in through this DEF line. The FME attribute is always matched against the Informix Spatial column with the same name. Also, the target table is always the feature type specified in the DEF line. Each column listed with the infx_delete_key_columns directive must be defined with a type on the DEF line, in addition to the columns whose values will be updated by the operation. This cannot be used with infx_update_key_columns. Also, the keys cannot be of type BLOB, CLOB, or LONG_VARCHAR.

infx_geometry_column

This parameter can be used to specify the name of the spatial layer (geometry column name). If it is not specified the default name of “geometry” will be used for the spatial layer.

infx_multi_geometry

This parameter is in effect only when creating a new table. It specifies whether geometry features should be written as multi geometries (e.g. ST_MULTIPOINT) or single geometries (e.g., ST_POINT).

  • YES: The table created has multi geometries (for example, when the geometry column type is ST_MULTIPOINT, point features are aggregated as IFMEMultiPoints and written out as ST_MULTIPOINT values).
  • NO: The geometry column of the created table is singular (that is, ST_POINT), and IFMEMulti geometries are split (e.g., IFMEMultiPoint split into IFMEPoints).
  • FIRST_FEATURE: The type of the geometry column will be determined based on the first feature entering the writer. For example, if the first feature contains an IFMEPoint, then the geometry column type will be ST_POINT.

Note that of the three options, YES is the least lossy. With NO and FIRST_FEATURE, it is possible to have a single IFMEMultiPoint feature be broken up into multiple IFMEPoints, which would result in multiple rows in the target table.

infx_offset_x

infx_offset_y

This parameter is enabled only when creating a new table.

infx_offset_x and infx_offset_y correspond to the columns FALSEX and FALSEY in the system table SDE.SPATIAL_REFERENCES.

This parameter specifies the minimum x (y) coordinate of the spatial reference system for the target table. If a geometry feature has x (y) coordinates below this value, then the feature is rejected or translation is aborted depending on the value of the writer directive ABORT_ON_BAD_DATA.

infx_scale_x

This parameter is enabled only when creating a new table.

This parameter specifies the resolution of the spatial reference system. The resolution of the spatial reference system is equal to 1 divided by infx_scale_x. For example, if infx_scale_x is 1, all coordinates will be rounded to integers. As another example, if infx_scale_x is 10, 1/10 is 0.1, and all coordinates will be rounded to the nearest 0.1, which means a coordinate value of 2.149 will be written as 2.1.

infx_scale_x corresponds to the column XYUNITS in the system table SDE.SPATIAL_REFERENCES.

The parameters infx_offset_x, infx_offset_y, and infx_scale_x together define the maximum x and y coordinates in the spatial reference system for the target table. If a geometry feature has x (y) coordinates above these maximums, then the feature is rejected or translation is aborted depending on the value of the writer directive ABORT_ON_BAD_DATA.

infx_srid The SRID that will be attached to all geometry. This SRID must exist in the SPATIAL_REFERENCE table. If left blank, the SRID will be determined from the feature coordinate system.