Subject Re: [IB-Architect] Spatial objects in IB
Author Daniel_Work@nemmco.com.au
UDFs are not going to solve every extension problem. I have a little
experience with Oracle Spatial Option and I have also read about their
other extensions eg Time Series, Multi Media, etc.

I believe you are correct that Interbase's foot print should be kept as
small as possible. However form my observations of how Oracle has executed
its extensions I believe that certain key functionality must be built into
Interbase's core engine. I believe there are four key areas of
functionality that need to be address ADT, Nested List Columns, User
Defined Indexes and an SQL Extension API.

ADT: Abstract Data Types allow for the definition of Pascal record like
domains eg
CREATE DOMAIN TPOINT (
X DOUBLE,
Y DOUBLE)
INDEX WITH I_RSQR_TREE; /*USER DEFINED INDEX I_RSQR_TREE*/

Nested List Columns: Allows a table to contain a column which is in fact a
pointer to a list of values of a specific type eg

CREATE DOMAIN TLINE AS LIST OF TPOINT;

CREATE TABLE ROADS (
NAME VARCHAR(60),
CENTERLINE TLINE);

User Defined Indexes: The data types used by possible extensions will often
require non standard indexing to achieve a reasonable level of performance
for example vector based spatial data is often indexed with an R-Squared
Tree.

SQL Extension API: Would allow an extension to register changes to the SQL
syntax.

In conclusion I would like to acknowledge that the above extension would
require a huge collective effort. However they would also provide enormous
opportunities for both open and proprietary extensions to Interbase with
out comprimising the size of the core engine.

Daniel Work
Land of Oz