What is the Informix Spatial DataBlade geometry type?
The IBM Informix Spatial DataBlade embeds a geographic information system (GIS) into your Informix Dynamic Server (IDS) kernel. The Informix Spatial DataBlade module implements the Open Geospatial Consortium, Inc. (OGC), SQL 3 specification of user-defined types (UDTs), columns capable of storing spatial data such as the location of a landmark, street, or parcel of land.
An ArcSDE geodatabase in an Informix database management system (DBMS) stores its spatial data in the Informix Spatial DataBlade data types. Therefore, before ArcSDE can store spatial data in an Informix database, Spatial DataBlade must be registered.
For more information on Informix Spatial DataBlade and how to install it, consult IBM Informix Spatial DataBlade Module User's Guide. The DataBlade Module Installation and Registration Guide also describes how to register DataBlade modules.
How IBM Spatial DataBlade works
Once Informix Spatial DataBlade is installed, you can create spatially enabled tables that include spatial columns. Geographic features can be inserted into the spatial columns. Informix Spatial DataBlade converts spatial data into its storage format from one of three external formats:
- Well-known text (WKT) representation
- Well-known binary (WKB) representation
- ESRI shape representation
ArcSDE geodatabases in Informix databases use the ESRI shape representation.
Accessing the spatially enabled tables through the ArcSDE server allows you to write applications using the existing tools offered by the GIS software or create applications using the ArcSDE C API. An experienced ODBC programmer can also make calls to the Informix Spatial DataBlade spatial functions. The majority of this document is devoted to discussing and applying these spatial functions.
After integrating spatial data into your database, you can include Spatial DataBlade functions in your SQL statements, comparing the values of spatial columns, transforming the values into other spatial data, and describing the properties of the data.
The spatial reference table
The spatial reference system identifies the coordinate transformation matrix for each geometry. Geometry is the term adopted by OGC to refer to two-dimensional spatial data. All spatial reference systems known to the database are stored in the spatial_references table. The spatial_references table stores a record for each spatial reference in the database.
Internal functions use the parameters of a spatial reference system to translate and scale each floating-point coordinate of the geometry into positive integers prior to storage. Upon retrieval, the coordinates are restored to their external floating-point format.
The floating point coordinates are converted to integers by subtracting the falsex and falsey values, which translates to the false origin, then scales by multiplying by the x,y units, adds a half unit, and truncates the remainder.
The optional z-coordinates and measures are dealt with similarly, except that they are translated with falsez and falsem and scaled with z-units and m-units, respectively.
SRID, the spatial_references primary key, contains a unique number for each spatial reference system.
The spatial reference system is assigned to a geometry during its construction. The spatial reference system must exist in the spatial_references table. All geometries in a column must have the same spatial reference system.
Whenever you create a feature class, ArcSDE searches the spatial_references table in an attempt to locate a matching spatial reference system. If one is found, the SRID is assigned to the feature class; otherwise, ArcSDE adds a new spatial reference system to the spatial_references table and assigns it to the feature class.
When you import data to a feature class from another data source, such as a coverage or shapefile, the coordinates of the data must fit within the extent of the spatial reference system. Each feature found to lie outside the spatial reference system's extent is rejected.
Where to find IBM documentation
The primary IBM document you should be aware of is IBM Informix Spatial DataBlade Module User's Guide, version 8.21. The content of this manual is available in the IBM Informix Dynamic Server v11.10 and v11.50 Information Centers.