(* SCHEMA step_merged_ap_schema; *)
-- IN AP232 RULE exchange_reason_existence_required FOR (property_definition ); LOCAL dri : descriptive_representation_item; prpd : SET OF property_definition; repi : representation; result : BOOLEAN := TRUE; prdr : BAG OF property_definition_representation; END_LOCAL; prpd := property_definition; REPEAT i := 1 TO SIZEOF(prpd) BY 1; IF prpd[i].name = 'data definition exchange header' THEN result := FALSE; prdr := USEDIN(prpd[i], 'STEP_MERGED_AP_SCHEMA.' + 'PROPERTY_DEFINITION_REPRESENTATION.DEFINITION'); REPEAT j := 1 TO SIZEOF(prdr) BY 1; repi := prdr[j].used_representation; IF NOT (repi.name = 'exchange reason') THEN ESCAPE; ELSE REPEAT k := 1 TO SIZEOF(repi.items) BY 1; IF 'STEP_MERGED_AP_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(repi.items[k]) THEN dri := repi.items[k]; IF (dri.name = 'exchange purpose') XOR (dri.name = 'base exchange reason') THEN result := TRUE; ESCAPE; END_IF; END_IF; END_REPEAT; END_IF; END_REPEAT; END_IF; END_REPEAT; WHERE wr1: result; END_RULE;
Generated by STEP Tools® EXPRESS to HTML Converter
2024-09-06T14:00:33-04:00