When you build a UDT, either by extending a built-in data type or by creating an opaque data type, you must provide for the operations that the data type uses. An operation is a task that the database server performs on one or more values.
You can write special-purpose routines that extend the built-in operations of the database. The manual discusses the following specific types of operators in detail:
The database server provides operator symbols (+, -, =, > and so on) and built-in functions such as cos() and abs(). You can extend these operators for extended data types.
Extending Operators and Built-In Functions, discusses general aspects of extending an operation and describes how to extend operator symbols and built-in functions.
The database server provides casts for the built-in data types. When you use UDTs, you usually need to provide casts.
Creating User-Defined Casts, describes how to create casts. The IBM Informix: Database Design and Implementation Guide discusses how to use casts.
An aggregate produces one value that summarizes some aspect of a selected column; for example, the average or the count. You can extend aggregates in two ways:
Creating a user-defined aggregate and extending an existing aggregate for extended data types require different techniques. For information about both techniques, refer to Creating User-Defined Aggregates.