RULE product_definition_for_stability_definition

(* SCHEMA step_ship_schema; *)
-- ONLY IN AP216
RULE product_definition_for_stability_definition FOR (
             applied_classification_assignment);

    LOCAL
      t3_set    : SET OF property_definition_representation := [];
      violation : LOGICAL := FALSE;
      t4_set    : SET OF property_definition := [];
      t1_set    : SET OF property_definition := [];
      c_a_set   : SET OF applied_classification_assignment := [];
      c2_a_set  : SET OF applied_classification_assignment := [];
      t2_set    : SET OF representation := [];
    END_LOCAL;
    c_a_set := QUERY ( i <* applied_classification_assignment | (i.
        assigned_class.name = 'stability definition') );
    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;
    c2_a_set := QUERY ( i <* applied_classification_assignment | (i.
        assigned_class.name = 'stability table') );
    REPEAT i := 1 TO HIINDEX(c2_a_set) BY 1;
      REPEAT j := 1 TO HIINDEX(c2_a_set[i].items) BY 1;
        t2_set := t2_set + c2_a_set[i].items[j];
      END_REPEAT;
    END_REPEAT;
    REPEAT i := 1 TO HIINDEX(t2_set) BY 1;
      t3_set := t3_set + bag_to_set(USEDIN(t2_set[i],'STEP_SHIP_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.USED_REPRESENTATION'));
    END_REPEAT;
    REPEAT i := 1 TO HIINDEX(t3_set) BY 1;
      t4_set := t4_set + t3_set[i].definition;
    END_REPEAT;
    violation := t1_set <> t4_set;

  WHERE
    wr1: (NOT violation);

END_RULE;

[Top Level Definitions] [Exit]

Generated by STEP ToolsTM EXPRESS to HTML Converter
on 2007-09-24T12:42:21-04:00