(* SCHEMA step_merged_ap_schema; *)
-- IN AP242 FUNCTION validate_inspected_elements_type (ei : shape_data_quality_criterion; type_list : BAG OF STRING ) : LOGICAL; LOCAL sdqir : SET OF shape_data_quality_inspection_result := []; sdir : SET OF shape_data_quality_inspection_instance_report := []; sdiri : SET OF shape_data_quality_inspection_instance_report_item := []; t_type_list : BAG OF STRING := []; END_LOCAL; sdqir := QUERY (q <* bag_to_set(USEDIN(ei, 'STEP_MERGED_AP_SCHEMA.DATA_QUALITY_INSPECTION_RESULT.CRITERION_INSPECTED'))| 'STEP_MERGED_AP_SCHEMA.SHAPE_DATA_QUALITY_INSPECTION_RESULT' IN TYPEOF(q)); IF SIZEOF(sdqir) = 0 THEN RETURN (FALSE); END_IF; REPEAT i := 1 TO SIZEOF(sdqir); sdir := sdir + QUERY (q <* bag_to_set(USEDIN(sdqir[i], 'STEP_MERGED_AP_SCHEMA.DATA_QUALITY_INSPECTION_REPORT.INSPECTION_RESULT'))| ('STEP_MERGED_AP_SCHEMA.SHAPE_DATA_QUALITY_INSPECTION_INSTANCE_REPORT' IN TYPEOF(q))); END_REPEAT; IF SIZEOF(sdir) = 0 THEN RETURN (FALSE); END_IF; REPEAT i := 1 TO SIZEOF(sdir); sdiri := sdiri + QUERY (q <* sdir[i].inspected_instances| ('STEP_MERGED_AP_SCHEMA.SHAPE_DATA_QUALITY_INSPECTION_INSTANCE_REPORT_ITEM' IN TYPEOF(q))); END_REPEAT; IF SIZEOF(sdiri) = 0 THEN RETURN (FALSE); END_IF; REPEAT i := 1 TO SIZEOF(sdiri); IF SIZEOF(sdiri[i].inspected_elements) <> SIZEOF(type_list) THEN RETURN (FALSE); END_IF; t_type_list := type_list; REPEAT j := 1 TO SIZEOF(sdiri[i].inspected_elements); REPEAT k := 1 TO SIZEOF(t_type_list); IF t_type_list[k] IN TYPEOF(sdiri[i].inspected_elements[j]) THEN t_type_list := t_type_list - t_type_list[k]; ESCAPE; END_IF; END_REPEAT; END_REPEAT; IF SIZEOF(t_type_list) > 0 THEN RETURN (FALSE); END_IF; END_REPEAT; RETURN (FALSE); END_FUNCTION;
Generated by STEP Tools® EXPRESS to HTML Converter
2020-07-28T17:02:20-04:00