RULE plib_class_reference_requires_version FOR (externally_defined_class); LOCAL known_sourced_classes : SET OF externally_defined_class; END_LOCAL; known_sourced_classes := QUERY( edc <* externally_defined_class | 'CATALOG_DATA_INFORMATION_MIM' + '.KNOWN_SOURCE' IN TYPEOF(edc.source) ); WHERE wr1: SIZEOF( QUERY( edc <* known_sourced_classes | (SIZEOF( QUERY( aei <* USEDIN(edc,'CATALOG_DATA_INFORMATION_MIM' + '.APPLIED_EXTERNAL_IDENTIFICATION_ASSIGNMENT.ITEMS') | aei.role.name = 'version' )) <> 1) )) = 0; wr2: SIZEOF( QUERY( edc <* known_sourced_classes | (SIZEOF( QUERY( aei <* USEDIN(edc,'CATALOG_DATA_INFORMATION_MIM' + '.APPLIED_IDENTIFICATION_ASSIGNMENT.ITEMS') | aei.role.name = 'version' )) > 0) )) = 0; END_RULE; -- plib_class_reference_requires_version |
public class RPlib_class_reference_requires_version public int rWr2(SdaiContext _context) public int rWr1(SdaiContext _context) public int run(SdaiContext _context, A_string violations) |