(* SCHEMA ship_moulded_form_schema; *)
RULE hull_moulded_form_design_parameter_with_class_references FOR (
applied_classification_assignment);
LOCAL
t3_set : SET OF representation := [];
violation : LOGICAL := FALSE;
t1_set : SET OF property_definition := [];
c_a_set : SET OF applied_classification_assignment := [];
t2_set : SET OF property_definition_representation := [];
END_LOCAL;
c_a_set := QUERY ( i <* applied_classification_assignment | (i.
assigned_class.name = 'hull moulded form design parameter') );
REPEAT i := 1 TO HIINDEX(c_a_set) BY 1;
REPEAT j := 1 TO HIINDEX(c_a_set[i].items) BY 1;
t1_set := t1_set + c_a_set[i].items[j];
END_REPEAT;
END_REPEAT;
REPEAT i := 1 TO HIINDEX(t1_set) BY 1 WHILE NOT violation;
t2_set := bag_to_set(USEDIN(t1_set[i],
'SHIP_MOULDED_FORM_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.' +
'DEFINITION'));
REPEAT j := 1 TO HIINDEX(t2_set) BY 1;
t3_set := t3_set + t2_set[j].used_representation;
END_REPEAT;
violation := SIZEOF(QUERY ( t2_inst <* t3_set | ('midship tumble' IN
which_class(t2_inst)) )) > 1;
END_REPEAT;
WHERE
wr1: (NOT violation);
END_RULE; -- hull_moulded_form_design_parameter_with_class_references
Generated by STEP Tools® EXPRESS to HTML Converter
2012-03-27T17:16:47-04:00