(* SCHEMA Ship_arrangement_schema; *)
RULE representation_for_tonnage_definition FOR (representation );
LOCAL
reps : BAG OF representation := [];
arg_list : LIST OF STRING := [ 'tonnage regulation' ];
violation : LOGICAL := FALSE;
END_LOCAL;
reps := QUERY (temp_rep <* representation| SIZEOF(QUERY (temp_prop_def_rep <* bag_to_set(USEDIN(temp_rep, 'SHIP_ARRANGEMENT_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.' + 'USED_REPRESENTATION'))| (temp_prop_def_rep.NAME = 'tonnage definition'))) > 0);
REPEAT i := 1 TO HIINDEX(reps) WHILE NOT violation;
REPEAT j := 1 TO HIINDEX(arg_list) 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;
Generated by STEP Tools® EXPRESS to HTML Converter
2012-03-27T17:16:37-04:00