RULE restrict_representation_for_document_format_property FOR (representation, representation_item); LOCAL document_format_representations: SET OF representation := []; END_LOCAL; document_format_representations := QUERY( r <* representation | (r.name ='document format' )); WHERE wr1: SIZEOF ( QUERY ( r <* document_format_representations | ( ( SIZEOF ( r.items ) <1 ) OR (SIZEOF ( r.items ) >3 ) ) ) ) =0; wr2: SIZEOF ( QUERY ( ri <* representation_item | ( SIZEOF (QUERY ( r <* USEDIN ( ri ,'CATALOG_DATA_INFORMATION_MIM' + '.REPRESENTATION.ITEMS' ) | r.name ='document format' ) ) >0 ) AND NOT ( ri. name IN ['character code' , 'data format' ] ) ) ) =0; wr3: SIZEOF ( QUERY ( r <* document_format_representations | ( SIZEOF ( QUERY ( i <* r.items | (i.name = 'character code' ) AND ( 'CATALOG_DATA_INFORMATION_MIM' + '.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF ( i ) ) ) ) >1) ) ) =0; wr4: SIZEOF ( QUERY ( r <* document_format_representations | ( SIZEOF ( QUERY ( i <* r.items | (i.name = 'data format' ) AND ( 'CATALOG_DATA_INFORMATION_MIM' + '.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF ( i ) ) ) ) >1) ) ) =0; wr5: SIZEOF ( QUERY ( r <* document_format_representations | ( SIZEOF ( QUERY ( i <* r.items| ( i.name = 'size format' ) AND ( 'CATALOG_DATA_INFORMATION_MIM' + '.PLANAR_EXTENT' IN TYPEOF ( i ) ) ) ) >1 ) ) ) = 0; END_RULE; -- restrict_representation_for_document_format_property |
public class RRestrict_representation_for_document_format_property 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) |