RULE representation_for_hull_moulded_form_design_parameter

(* SCHEMA ship_moulded_form_schema; *)
  RULE representation_for_hull_moulded_form_design_parameter FOR (
             representation);

    LOCAL
      violation : LOGICAL := FALSE;
      arg_list  : LIST OF STRING := [
                   'aft end of parallel midbody at design draught',
                   'front end of parallel midbody at design draught',
                   'aft end of flat of side','front end of flat of side',
                   'block coefficient','prismatic coefficient',
                   'max wetted frame section area','waterplane coefficient'];
      reps      : BAG OF representation := [];
    END_LOCAL;
    reps := QUERY ( temp_rep <* representation | (SIZEOF(
        QUERY ( temp_prop_def_rep <* bag_to_set(USEDIN(temp_rep,'SHIP_MOULDED_FORM_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.USED_REPRESENTATION'))
         | (temp_prop_def_rep.name = 'hull moulded form design parameter') )) 
        > 0) );
    REPEAT i := 1 TO HIINDEX(reps) BY 1 WHILE NOT violation;
      REPEAT j := 1 TO HIINDEX(arg_list) BY 1 WHILE NOT violation;
        violation := SIZEOF(QUERY ( rep_item <* reps[i].items | (rep_item.
            name = arg_list[j]) )) <> 1;
      END_REPEAT;
    END_REPEAT;

  WHERE
    wr1: (NOT violation);

  END_RULE; -- representation_for_hull_moulded_form_design_parameter

[Top Level Definitions] [Exit]

Generated by STEP Tools® EXPRESS to HTML Converter
2012-03-27T17:16:47-04:00