(* SCHEMA ship_structures_schema; *)
RULE document_reference_has_at_least_one_references FOR (document,
document_usage_constraint);
LOCAL
violate : LOGICAL := FALSE;
t1_set : SET OF document := [];
t2_set : SET OF document_usage_constraint := [];
END_LOCAL;
t1_set := QUERY ( i <* document | VALUE_IN(which_class(i),
'document reference') );
REPEAT i := 1 TO HIINDEX(t1_set) BY 1 WHILE NOT violate;
t2_set := bag_to_set(USEDIN(t1_set[i],
'SHIP_STRUCTURES_SCHEMA.DOCUMENT_USAGE_CONSTRAINT.SOURCE'));
violate := SIZEOF(t2_set) < 1;
END_REPEAT;
WHERE
wr1: (NOT violate);
END_RULE; -- document_reference_has_at_least_one_references
Generated by STEP Tools® EXPRESS to HTML Converter
2012-03-27T17:17:03-04:00