 TYPE
    fst$user_defined_attribute = record

      name: ost$name,
      privileged_attribute: boolean,

{ When a user attribute of any type is to be created, changed or queried,
{ the caller of the request must provide a program variable of the necessary
{ type and initialize this record to point to the initialized program variable.
{ The value of the attribute will be obtained from or stored into the address
{ provided, depending upon the program request used.
{
      case selector: fst$user_attribute_type of
      = fsc$boolean_type =
        boolean_value: ^boolean,
      = fsc$date_time_type =
        date_time: ^clt$date_time,
      = fsc$entry_point_reference_type =
        entry_point_reference_value: ^pmt$entry_point_reference,
      = fsc$file_type =
        file_value: ^fst$file_reference,
      = fsc$integer_type =
        integer_value: ^integer,
      = fsc$name_type =
        name_value: ^ost$name,
      = fsc$null_type =
        ,
      = fsc$real_type =
        real_value: ^real,
      = fsc$sequence_type =
        sequence_value: ^SEQ ( * ),
      = fsc$status_type =
        status_value: ^ost$status,
      = fsc$string_type =
        string_value: ^string ( * ),
      = fsc$time_increment_type =
        time_increment_value: ^pmt$time_increment,
      casend,
    recend;

*copyc clt$date_time
*copyc fst$file_reference
*copyc fst$user_attribute_type
*copyc ost$name
*copyc ost$status
*copyc pmt$entry_point_reference
*copyc pmt$time_increment
