RULE alternative_version_relationship_versionable_object

(* SCHEMA ship_moulded_form_schema; *)
  RULE alternative_version_relationship_versionable_object FOR (
             applied_identification_assignment, 
             identification_assignment_relationship);

    LOCAL
      violate : LOGICAL := FALSE;
    END_LOCAL;
    REPEAT i := 1 TO HIINDEX(applied_identification_assignment) BY 1
         WHILE NOT violate;
      IF (SIZEOF(USEDIN(applied_identification_assignment[i],'SHIP_MOULDED_FORM_SCHEMA.IDENTIFICATION_ASSIGNMENT_RELATIONSHIP.' 
          + 'RELATING_IDENTIFICATION_ASSIGNMENT')) > 0) OR (SIZEOF(USEDIN(
          applied_identification_assignment[i],'SHIP_MOULDED_FORM_SCHEMA.IDENTIFICATION_ASSIGNMENT_RELATIONSHIP.' 
          + 'RELATED_IDENTIFICATION_ASSIGNMENT')) > 0) THEN
        REPEAT j := 1 TO HIINDEX(applied_identification_assignment[i].
            items) BY 1 WHILE NOT violate;
          violate := NOT VALUE_IN(which_class(
              applied_identification_assignment[i].items[j]),
              'versionable object');
        END_REPEAT;
      END_IF;
    END_REPEAT;

  WHERE
    wr1: (NOT violate);

  END_RULE; -- alternative_version_relationship_versionable_object

[Top Level Definitions] [Exit]

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