RULE restrict_multi_language_for_process_product_association FOR (process_product_association); WHERE wr1: SIZEOF ( QUERY ( ent <* process_product_association | SIZEOF ( QUERY ( mlaa <* USEDIN ( ent , 'AUTOMOTIVE_DESIGN.'+'MULTI_LANGUAGE_ATTRIBUTE_ASSIGNMENT.'+ 'ITEMS' ) | ( mlaa. attribute_name<>'description' ) ) ) >0 ) ) =0; wr2: SIZEOF ( QUERY ( ent <* process_product_association | SIZEOF ( QUERY ( ala <* USEDIN ( ent , 'AUTOMOTIVE_DESIGN.'+'ATTRIBUTE_LANGUAGE_ASSIGNMENT.'+ 'ITEMS' ) | ( ala. attribute_name<>'description' ) ) ) >0 ) ) =0; wr3: SIZEOF ( QUERY ( ent <* process_product_association | ( SIZEOF ( QUERY ( mlaa1 <* USEDIN ( ent , 'AUTOMOTIVE_DESIGN.'+'MULTI_LANGUAGE_ATTRIBUTE_ASSIGNMENT.'+ 'ITEMS' ) | SIZEOF ( QUERY ( mlaa2 <* USEDIN ( ent , 'AUTOMOTIVE_DESIGN.'+'MULTI_LANGUAGE_ATTRIBUTE_ASSIGNMENT.'+ 'ITEMS' ) | ( mlaa1. attribute_name =mlaa2. attribute_name ) AND ( mlaa1. language =mlaa2. language ) ) ) >1 ) ) + SIZEOF ( QUERY ( ala1 <* USEDIN ( ent , 'AUTOMOTIVE_DESIGN.'+'ATTRIBUTE_LANGUAGE_ASSIGNMENT.'+ 'ITEMS' ) | SIZEOF ( QUERY ( ala2 <* USEDIN ( ent , 'AUTOMOTIVE_DESIGN.'+'ATTRIBUTE_LANGUAGE_ASSIGNMENT.'+ 'ITEMS' ) | ( ala1. attribute_name =ala2. attribute_name ) AND ( ala1. language =ala2. language ) ) ) >1 ) ) ) >0 ) ) =0; END_RULE; -- restrict_multi_language_for_process_product_association |
public class RRestrict_multi_language_for_process_product_association public int rWr3(SdaiContext _context) public int rWr2(SdaiContext _context) public int rWr1(SdaiContext _context) public int run(SdaiContext _context, A_string violations) |