RULE restrict_product_definitions_for_collection FOR (product_definition_relationship); WHERE wr1: SIZEOF ( QUERY ( pdr <* product_definition_relationship | ( pdr. name = 'collection membership' ) AND ( ( pdr.relating_product_definition.frame_of_reference.name<>'part definition' ) OR ( pdr.related_product_definition.frame_of_reference.name<>'part occurrence' ) OR ( SIZEOF ( QUERY ( pdca <* USEDIN (pdr.relating_product_definition , 'PART_COLLECTION_MIM' + '.PRODUCT_DEFINITION_CONTEXT_ASSOCIATION.DEFINITION') | ( pdca.role.name = 'part definition type' ) AND ( pdca.frame_of_reference.name = 'collection definition' ) )) =0 ) ) ) ) =0; END_RULE; -- restrict_product_definitions_for_collection |
public class RRestrict_product_definitions_for_collection public int rWr1(SdaiContext _context) public int run(SdaiContext _context, A_string violations) |