The class condition tests whether or not an operand contains a particular type of data. The general format of the class condition is:
variable IS [NOT] {NUMERIC } {ALPHABETIC } {ALPHABETIC-UPPER} {ALPHABETIC-LOWER} {class-name }
Variable must name a data item with USAGE DISPLAY. If class-name is used, it must be a name defined in a CLASS clause in the SPECIAL-NAMES paragraph.
The NUMERIC test cannot be used with an elementary item whose class is alphabetic or a group item composed of elementary items which contain operational signs. If the item being tested is not described as having an operational sign, the item is considered numeric only if the content consists of the digits 0 through 9. If the item is described as having an operational sign, the item is considered numeric only if the content consists of the digits 0 through 9 and a valid operational sign.
The ALPHABETIC test cannot be used with an item whose class is numeric. The test is true if the content of the data item consists entirely of the characters A through Z, a through z, and space. The ALPHABETIC-LOWER and ALPHABETIC-UPPER tests are similar to the ALPHABETIC test except that only lower-case or upper-case characters are allowed respectively.
If class-name is used, then variable may not be numeric. The test is true if variable consists solely of characters named in the CLASS clause that defined class-name. See Special-Names Paragraph for a description of the CLASS clause.
If the NOT option is specified, then the test is true if and only if the same condition without the NOT option is false.