# // GetPrice < P_PRICE Price >                                                /* Auto-generated */
+
  select type_of (Price)
  +
    case T_RETAIL_PRICE_LIST_ITEM
    +
      return GetPrice (Retail_price_list_item) / Retail_price_list_item <- Price, P_RETAIL_PRICE_LIST_ITEM
    ;

    case T_WHOLESALE_PRICE_LIST_ITEM
    +
      return GetPrice (Wholesale_price_list_item) / Wholesale_price_list_item <- Price, P_WHOLESALE_PRICE_LIST_ITEM
    ;

    ...

  ; 
  else 
  +
    Error (ERR_UNKNOWN_TYPE)
  ;
;