RULE machining_feature_definition_constraints

(* SCHEMA step_merged_ap_schema; *)
-- IN AP242
RULE machining_feature_definition_constraints FOR (feature_definition );
   LOCAL
      mfds : SET OF feature_definition := [];
   END_LOCAL;
      mfds := QUERY (temp <* feature_definition| 'STEP_MERGED_AP_SCHEMA.MACHINING_FEATURE_DEFINITION' IN TYPEOF(temp));
   WHERE
      wr1:
         SIZEOF(QUERY (mfd <* mfds| NOT (SIZEOF(QUERY (pdr <* get_property_definition_representations(mfd)| ('STEP_MERGED_AP_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) <= 1))) = 0;
      wr2:
         SIZEOF(QUERY (mfd <* mfds| NOT (SIZEOF(QUERY (pd <* USEDIN(mfd, 'STEP_MERGED_AP_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_AP_SCHEMA.' + 'PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_AP_SCHEMA.' + 'SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_AP_SCHEMA.PLACEMENT' IN TYPEOF(it)) AND (it.name = 'orientation'))) = 1))) = 0))) = 0))) = 0;
      WR3:
         SIZEOF(QUERY (mfd <* mfds| NOT (NOT (SIZEOF([ 'STEP_MERGED_AP_SCHEMA.ROUND_HOLE', 'STEP_MERGED_AP_SCHEMA.BOSS', ('STEP_MERGED_AP_SCHEMA.' + 'OUTSIDE_PROFILE'), 'STEP_MERGED_AP_SCHEMA.REMOVAL_VOLUME', 'STEP_MERGED_AP_SCHEMA.FLAT_FACE', ('STEP_MERGED_AP_SCHEMA.' + 'POCKET'), 'STEP_MERGED_AP_SCHEMA.PROTRUSION', 'STEP_MERGED_AP_SCHEMA.RIB_TOP', ('STEP_MERGED_AP_SCHEMA.' + 'ROUNDED_END'), 'STEP_MERGED_AP_SCHEMA.SLOT', 'STEP_MERGED_AP_SCHEMA.STEP' ] * TYPEOF(mfds)) = 1) OR (SIZEOF(QUERY (pdr <* get_property_definition_representations(mfd)| ('STEP_MERGED_AP_SCHEMA.' + 'PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'maximum feature limit'))) >= 0)))) = 0;
END_RULE;

[Top Level Definitions] [Exit]

Generated by STEP Tools® EXPRESS to HTML Converter
2017-01-19T11:17:24-05:00