RULE restrict_applied_action_assignment FOR (applied_action_assignment, object_role); WHERE wr1: SIZEOF ( QUERY ( aaa <* applied_action_assignment | ( aaa. role.description = 'activity element' ) AND NOT ( 'AUTOMOTIVE_DESIGN.'+ 'EXECUTED_ACTION' IN TYPEOF ( aaa. assigned_action ) ) ) ) =0; wr2: SIZEOF ( QUERY ( aaa <* applied_action_assignment | ( aaa. role.description = 'activity element' ) AND NOT item_correlation ( aaa. items , ['ACTION' , 'ACTION_METHOD' , 'ACTION_PROPERTY' , 'ASSEMBLY_COMPONENT_USAGE_SUBSTITUTE' , 'CONFIGURATION_ITEM' , 'CONFIGURATION_EFFECTIVITY' , 'CONFIGURED_EFFECTIVITY_ASSIGNMENT' , 'DOCUMENT_FILE' , 'DRAUGHTING_MODEL' , 'DRAWING_REVISION' , 'GENERAL_PROPERTY' , 'MATERIAL_DESIGNATION' , 'MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION' , 'PRESENTATION_AREA' , 'PRODUCT' , 'PRODUCT_CONCEPT' , 'PRODUCT_CONCEPT_FEATURE' , 'PRODUCT_CONCEPT_FEATURE_ASSOCIATION' , 'PRODUCT_CONCEPT_FEATURE_CATEGORY' , 'PRODUCT_CONCEPT_FEATURE_CATEGORY_USAGE' , 'PRODUCT_DEFINITION' , 'PRODUCT_DEFINITION_FORMATION' , 'PRODUCT_DEFINITION_RELATIONSHIP' , 'PRODUCT_DEFINITION_SUBSTITUTE' , 'PROPERTY_DEFINITION' , 'RESOURCE_PROPERTY' , 'SHAPE_ASPECT' , 'SHAPE_REPRESENTATION'] ) ) ) =0; wr3: SIZEOF ( QUERY ( aaa <* applied_action_assignment | ( NOT EXISTS ( aaa. role ) OR ( aaa. role.description = 'activity element' ) ) AND ( SIZEOF ( QUERY ( i <* aaa. items | 'AUTOMOTIVE_DESIGN.'+ 'APPLIED_ACTION_ASSIGNMENT' IN TYPEOF ( i ) ) ) >0 ) ) ) =0; wr4: SIZEOF ( QUERY ( aaa <* applied_action_assignment | ( aaa. role.name = 'deliverable element' ) AND ( NOT ( 'AUTOMOTIVE_DESIGN.'+ 'ELEMENT_DELIVERY' IN TYPEOF ( aaa. assigned_action ) ) OR ( SIZEOF ( QUERY ( i <* aaa. items | 'AUTOMOTIVE_DESIGN.'+ 'APPLIED_ACTION_ASSIGNMENT' IN TYPEOF ( i ) ) ) >1 ) OR ( SIZEOF ( QUERY ( i <* aaa. items | ( 'AUTOMOTIVE_DESIGN.'+ 'APPLIED_ACTION_ASSIGNMENT' IN TYPEOF ( i ) ) AND ( i\action_assignment. role.description<> 'activity element' ) ) ) >0 ) ) ) ) =0; wr5: SIZEOF ( QUERY ( aaa <* applied_action_assignment | ( aaa. role.name ='retention' ) AND NOT ( 'AUTOMOTIVE_DESIGN.'+ 'RETENTION' IN TYPEOF ( aaa. assigned_action ) ) ) ) =0; wr6: SIZEOF ( QUERY ( aaa <* applied_action_assignment | ( aaa. role.name ='retention' ) AND NOT item_correlation ( aaa. items , ['ACTION' , 'ACTION_DIRECTIVE' , 'ACTION_PROPERTY' , 'ACTION_RELATIONSHIP' , 'APPLIED_ACTION_ASSIGNMENT' , 'APPLIED_CLASSIFICATION_ASSIGNMENT' , 'ASSEMBLY_COMPONENT_USAGE_SUBSTITUTE' , 'CERTIFICATION' , 'CLASS_SYSTEM' , 'CONFIGURATION_EFFECTIVITY' , 'CONFIGURATION_ITEM' , 'CONFIGURED_EFFECTIVITY_ASSIGNMENT' , 'DOCUMENT_FILE' , 'DRAUGHTING_MODEL' , 'DRAWING_REVISION' , 'GENERAL_PROPERTY' , 'MATERIAL_DESIGNATION' , 'MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION' , 'ORGANIZATIONAL_PROJECT' , 'PRESENTATION_AREA' , 'PRODUCT' , 'PRODUCT_CONCEPT' , 'PRODUCT_CONCEPT_FEATURE' , 'PRODUCT_CONCEPT_FEATURE_ASSOCIATION' , 'PRODUCT_CONCEPT_FEATURE_CATEGORY' , 'PRODUCT_CONCEPT_FEATURE_CATEGORY_USAGE' , 'PRODUCT_DEFINITION' , 'PRODUCT_DEFINITION_FORMATION' , 'PRODUCT_DEFINITION_RELATIONSHIP' , 'PRODUCT_DEFINITION_SUBSTITUTE' , 'PROPERTY_DEFINITION' , 'RESOURCE_PROPERTY' , 'SHAPE_REPRESENTATION' , 'VERSIONED_ACTION_REQUEST'] ) ) ) =0; wr7: SIZEOF ( QUERY ( aaa <* applied_action_assignment | ( aaa. role.name = 'test activity' ) AND NOT item_correlation ( aaa. items , ['PROPERTY_DEFINITION'] ) ) ) =0; END_RULE; -- restrict_applied_action_assignment |
public class RRestrict_applied_action_assignment public int rWr7(SdaiContext _context) public int rWr6(SdaiContext _context) public int rWr5(SdaiContext _context) public int rWr4(SdaiContext _context) public int rWr3(SdaiContext _context) public int rWr2(SdaiContext _context) public int rWr1(SdaiContext _context) public int run(SdaiContext _context, A_string violations) |