 TYPE
    fst$user_attribute_descriptor = record
      name: ost$name,
      privileged_attribute: boolean,

      case attribute_type: fst$user_attribute_type of

      = fsc$boolean_type, fsc$date_time_type, fsc$integer_type, fsc$name_type,
        fsc$real_type, fsc$status_type, fsc$time_increment_type =
        { Do a NEXT of a variable of the type boolean, clt$date_time,
        {integer, ost$name, real, ost$status or pmt$time_increment,
        {respectively.
        ,

      = fsc$entry_point_reference_type =
        { An attribute of type entry point reference has a two-part value.
        {One first does a NEXT of a variable of type pmt$program_name
        {and then a NEXT of a variable of type string whose size is
        {library_path_size.

        library_path_size: fst$path_size,

      = fsc$file_type =
        { Do a NEXT of a variable of type string whose size is file_path_size.

        file_path_size: fst$path_size,

      = fsc$string_type =
        { Do a NEXT of a variable of type string whose size is string_size.

        string_size: 0 .. fsc$max_user_attrib_sequence,
      casend,
    recend;

*copyc clt$date_time
*copyc fsc$max_user_attrib_sequence
*copyc fst$path_size
*copyc fst$user_attribute_type
*copyc ost$name
*copyc ost$status
*copyc pmt$entry_point_reference
*copyc pmt$time_increment
