RULE restrict_process_product_association

(* SCHEMA step_merged_ap_schema; *)
-- IN AP214
RULE restrict_process_product_association FOR (process_product_association );
   WHERE
      wr1:
         SIZEOF(QUERY (ppa <* process_product_association| NOT (ppa.name IN [ 'input', 'output', 'produced output' ]))) = 0;
      wr2:
         SIZEOF(QUERY (ppa <* process_product_association| NOT (ppa.name IN [ 'input', 'output' ]) OR (SIZEOF(QUERY (ar <* USEDIN(ppa.process, 'STEP_MERGED_AP_SCHEMA.ACTION_RELATIONSHIP.RELATED_ACTION')| (ar.name = 'process operation occurrence'))) = 0))) = 0;
      wr3:
         SIZEOF(QUERY (ppa <* process_product_association| (ppa.name <> 'produced output') OR ('STEP_MERGED_AP_SCHEMA.' + 'PRODUCT_DEFINITION' IN TYPEOF(ppa.defined_product)) AND (SIZEOF(QUERY (prpc <* USEDIN(ppa.defined_product\product_definition.formation.of_product, 'STEP_MERGED_AP_SCHEMA.PRODUCT_RELATED_PRODUCT_CATEGORY.PRODUCTS')| (prpc.name IN [ 'part', 'tool', 'raw material' ]))) = 0))) = 0;
END_RULE;

[Top Level Definitions] [Exit]

Generated by STEP Tools® EXPRESS to HTML Converter
2020-07-28T17:02:20-04:00