CDO> DEFINE RECORD PRODUCT_INVENTORY. cont> FIELD_ID. cont> VARIANTS. cont> VARIANT EXPRESSION IS cont> FIELD_ID IN PRODUCT_INVENTORY EQ "S". cont> IN_STOCK STRUCTURE. cont> PRODUCT_NO. cont> DATE_ORDERED. cont> STATUS_CODE. cont> QUANTITY. cont> LOCATION. cont> UNIT_PRICE. cont> END IN_STOCK STRUCTURE. cont> END VARIANT. cont> VARIANT EXPRESSION IS cont> FIELD_ID IN PRODUCT_INVENTORY EQ "B". cont> BACK_ORDER STRUCTURE. cont> PRODUCT_NO. cont> DATE_ORDERED. cont> STATUS_CODE. cont> QUANTITY. cont> SUPPLIER. cont> UNIT_PRICE. cont> END BACK_ORDER STRUCTURE. cont> END VARIANT. cont> VARIANT EXPRESSION IS cont> FIELD_ID IN PRODUCT_INVENTORY EQ "O". cont> OUT_OF_STOCK STRUCTURE. cont> PRODUCT_NO. cont> DATE_LAST_SOLD. cont> END OUT_OF_STOCK STRUCTURE. cont> END VARIANT. cont> END VARIANTS. cont> END RECORD. In this example, the DEFINE RECORD command creates the PRODUCT_ INVENTORY record element, which contains a variants definition consisting of three structure definitions. Each structure definition uses an expression whose value is compared to the value of the tag variable (FIELD_ID field definition) at runtime to determine which structure definition maps to the record element.