RULE restrict_effectivity_usage FOR (configured_effectivity_assignment, effectivity); WHERE wr1: SIZEOF ( QUERY ( e <* effectivity | ( SIZEOF ( ['AUTOMOTIVE_DESIGN.'+ 'DATED_EFFECTIVITY' , 'AUTOMOTIVE_DESIGN.'+ 'TIME_INTERVAL_BASED_EFFECTIVITY']* TYPEOF ( e ) ) =0 ) AND ( ( SIZEOF ( QUERY ( er <* USEDIN ( e , 'AUTOMOTIVE_DESIGN.EFFECTIVITY_RELATIONSHIP.'+'RELATED_EFFECTIVITY' ) | er. name ='inheritance' ) ) =0 ) AND ( ( e.id = 'configuration validity' ) AND ( SIZEOF ( QUERY ( cea <* USEDIN ( e , 'AUTOMOTIVE_DESIGN.EFFECTIVITY_ASSIGNMENT.ASSIGNED_EFFECTIVITY' ) | 'AUTOMOTIVE_DESIGN.'+ 'CONFIGURED_EFFECTIVITY_ASSIGNMENT' IN TYPEOF ( cea ) ) ) =0 ) ) AND ( ( e.id = 'class usage' ) AND ( SIZEOF ( QUERY ( aea <* USEDIN ( e , 'AUTOMOTIVE_DESIGN.'+'EFFECTIVITY_ASSIGNMENT.'+ 'ASSIGNED_EFFECTIVITY' ) | ( 'AUTOMOTIVE_DESIGN.'+ 'APPLIED_EFFECTIVITY_ASSIGNMENT' IN TYPEOF ( aea ) ) AND ( SIZEOF ( QUERY ( i <* aea. items | 'AUTOMOTIVE_DESIGN.'+ 'PRODUCT_CONCEPT_FEATURE_CATEGORY_USAGE' IN TYPEOF ( i ) ) ) >0 ) ) ) =0 ) ) ) ) ) =0; END_RULE; -- restrict_effectivity_usage |
public class RRestrict_effectivity_usage public int rWr1(SdaiContext _context) public int run(SdaiContext _context, A_string violations) |