The following example shows the representation of the syntax of a command in a manual. The command format consists of a field with the command name. All operands with their legal values are then listed. Operand values which introduce structures and the operands dependent on these operands are listed separately.
HELP-SDF |
GUIDANCE-MODE = *NO / *YES ,SDF-COMMANDS = *NO / *YES ,ABBREVIATION-RULES = *NO / *YES ,GUIDED-DIALOG = *YES (...) *YES(...) SCREEN-STEPS = *NO / *YES ,SPECIAL-FUNCTIONS = *NO / *YES ,FUNCTION-KEYS = *NO / *YES ,NEXT-FIELD = *NO / *YES ,UNGUIDED-DIALOG = *YES (...) / *NO *YES(...) SPECIAL-FUNCTIONS = *NO / *YES ,FUNCTION-KEYS = *NO / *YES |
This syntax description is valid for SDF V4.6A.The syntax of the SDF command/statement language is explained in the following three tables.
Table
2 : Notational conventions
The meanings of the special characters and the notation used to describe command and statement formats are explained in table 2.
Table
3 : Data types
Variable operand values are represented in SDF by data types. Each data type represents a specific set of values. The number of data types is limited to those described in table 3.
The description of the data types is valid for the entire set of commands/statements. Therefore only deviations (if any) from the attributes described here are explained in the relevant operand descriptions.
Table
4 : Suffixes for data types
Data type suffixes define additional rules for data type input. They contain a length or interval specification and can be used to limit the set of values (suffix begins with without), extend it (suffix begins with with), or declare a particular task mandatory (suffix begins with mandatory). The following short forms are used in this manual for data type suffixes:
cat-id | cat |
The description of the ‘integer’ data type in table 4 contains a number of items in italics; the italics are not part of the syntax and are only used to make the table easier to read.
For special data types that are checked by the implementation, table 4 contains suffixes printed in italics (see the special suffix) which are not part of the syntax.
The description of the data type suffixes is valid for the entire set of commands/statements. Therefore only deviations (if any) from the attributes described here are explained in the relevant operand descriptions.
Metasyntax
Representation | Meaning | Examples |
UPPERCASE LETTERS | Uppercase letters denote keywords (command, statement or operand names, keyword values) and constant operand values. Keyword values begin with *. | HELP-SDF SCREEN-STEPS = *NO |
UPPERCASE LETTERS in boldface | Uppercase letters printed in boldface denote guaranteed or suggested abbreviations of keywords. | GUIDANCE-MODE = *YES |
= | The equals sign connects an operand name with the associated operand values. | GUIDANCE-MODE = *NO |
< > | Angle brackets denote variables whose range of values is described by data types and suffixes (see tables 3 and 4). | SYNTAX-FILE = <filename 1..54> |
Underscoring | Underscoring denotes the default value of an operand. | GUIDANCE-MODE = *NO |
/ | A slash serves to separate alternative operand values. | NEXT-FIELD = *NO / *YES |
(...) | Parentheses denote operand values that initiate a structure. | ,UNGUIDED-DIALOG = *YES (...) / *NO |
[ ] | Square brackets denote operand values which introduce a structure and are optional. The subsequent structure can be specified without the initiating operand value. | SELECT = [*BY-ATTRIBUTES](...) |
Indentation | Indentation indicates that the | ,GUIDED-DIALOG = *YES (...) *YES(...) SCREEN-STEPS = *NO / *YES SUPPORT = *TAPE(...) *TAPE(...) VOLUME = *ANY (...) *ANY (...) |
, | A comma precedes further operands at the same structure level. | GUIDANCE-MODE = *NO / *YES ,SDF-COMMANDS = *NO / *YES |
list-poss(n): | The entry “list-poss” signifies that a list of operand values can be given at this point. If (n) is present, it means that the list must not have more than n elements. A list of more than one element must be enclosed in parentheses. | list-poss: *SAM / *ISAM list-poss(40): <structured-name 1..30> list-poss(256): *OMF / *SYSLST(...) / <filename 1..54> |
Alias: | The name that follows represents a | HELP-SDF Alias: HPSDF |
Table 2: Metasyntax
Data types
Data type | Character set | Special rules | ||||||||||
alphanum-name | A...Z | |||||||||||
cat-id | A...Z | Not more than 4 characters; | ||||||||||
command-rest | freely selectable | |||||||||||
composed-name | A...Z | Alphanumeric string that can be split into | ||||||||||
c-string | EBCDIC character | Must be enclosed within single quotes; | ||||||||||
date | 0...9 | Input format: yyyy-mm-dd
| ||||||||||
device | A...Z | Character string, max. 8 characters in length, | ||||||||||
fixed | +, - | Input format: [sign][digits].[digits]
must contain at least one digit, but may contain | ||||||||||
filename | A...Z | Input format: :cat: optional entry of the catalog identifier; $user. optional entry of the user ID; character set is A...Z, 0...9, $, #, @; maximum of 8 characters; first character cannot be a digit; $ and period are mandatory; default value is the user's own ID. $. (special case) system default ID file file or job variable name;
# or @ used as the first character indicates file(no) tape file name group name of a file generation group group (*abs) absolute generation number (1-9999); (+rel) relative generation number (0-99); | ||||||||||
integer | 0...9, +, - | + or -, if specified, must be the first character. | ||||||||||
name | A...Z | Must not begin with 0...9. | ||||||||||
partial-filename | A...Z | Input format: [:cat:][$user.][partname.] :cat: partname optional entry of the initial part of a name i The final character of “partname” must be a | ||||||||||
posix-filename | A...Z | String with a length of up to 255 characters; | ||||||||||
posix-pathname | A...Z | Input format: [/]part1/.../partn | ||||||||||
product-version | A...Z | where m, n, s and o are all digits and a is a letter. | ||||||||||
structured-name | A...Z | Alphanumeric string which may comprise a | ||||||||||
text | freely selectable | For the input format, see the relevant operand | ||||||||||
time | 0...9 | Time-of-day entry:
Leading zeros may be omitted | ||||||||||
vsn |
|
| ||||||||||
x-string | Hexadecimal: | Must be enclosed in single quotes; must be | ||||||||||
x-text | Hexadecimal: | Must not be enclosed in single quotes; |
Table 3: Data types
Suffixes for data types
Suffix | Meaning | ||||||||||||||||||||
x..y unit | With data type “integer”: interval specification
| ||||||||||||||||||||
x..y special | With the other data types: length specification
| ||||||||||||||||||||
with | Extends the specification options for a data type. | ||||||||||||||||||||
-compl | When specifying the data type “date”, SDF expands two-digit year specifications
| ||||||||||||||||||||
-low | Uppercase and lowercase letters are differentiated. | ||||||||||||||||||||
-pathcompl | For specifications for the data type “filename”, SDF adds the catalog and/or user ID if these have not been specified. | ||||||||||||||||||||
-under | Permits underscores (_) for the data types “name” and “composed-name”. | ||||||||||||||||||||
-wild(n) | Parts of names may be replaced by the following wildcards. | ||||||||||||||||||||
BS2000 wildcards | Meaning | ||||||||||||||||||||
* | Replaces an arbitrary (even empty) character string. If the | ||||||||||||||||||||
Terminating period | Partially-qualified entry of a name. | ||||||||||||||||||||
/ | Replaces any single character. | ||||||||||||||||||||
<sx:sy> | Replaces a string that meets the following conditions:
| ||||||||||||||||||||
<s1,...> | Replaces all strings that match any of the character combinations specified by s. s may also be an empty string. Any such string may also be a range specification “sx:sy” (see above). | ||||||||||||||||||||
-s | Replaces all strings that do not match the specified string s. The minus sign may only appear at the beginning of string s. Within the data types filename or partial-filename the negated string -s can be used exactly once, i.e. -s can replace one of the three name components: cat, user or file. | ||||||||||||||||||||
Wildcards are not permitted in generation and version specifications for file names. Only system administration may use wildcards in user IDs. Wildcards cannot be used to replace the delimiters in name components cat (colon) and user ($ and period). | |||||||||||||||||||||
POSIX wildcards | Meaning | ||||||||||||||||||||
* | Replaces any single string (including an empty string). An * | ||||||||||||||||||||
? | Replaces any single character; not permitted as the first character outside single quotes. | ||||||||||||||||||||
[cx-cy] | Replaces any single character from the range defined by cx and cy, including the limits of the range. cx and cy must be normal characters. | ||||||||||||||||||||
[s] | Replaces exactly one character from string s. The expressions [cx-cy] and [s] can be combined into [s1c<sub>1</sub>cx-cys<sub>y</sub>s2]. | ||||||||||||||||||||
[!cx-cy] | Replaces exactly one character not in the range defined by cx and cy, including the limits of the range. cx and cy must be normal characters. The expressions [!cx-cy] and [!s] can be combined into [!s1cx-cys<sub>y</sub>s2]. | ||||||||||||||||||||
[!s] | Replaces exactly one character not contained in string s. The expressions [!s] and [!cx-cy] can be combined into [!s1c<sub>1</sub>cx-cys<sub>y</sub>s2]. | ||||||||||||||||||||
wildconstr( n) | Specification of a constructor (string) that defines how new names are to be constructed from a previously specified selector (i.e. a selection string with wildcards). See also with-wild. n denotes the maximum input length when using wildcards. The constructor may consist of constant strings and patterns. A pattern (character) is replaced by the string that was selected by the corresponding pattern in the selector. The following wildcards may be used in constructors: | ||||||||||||||||||||
Wildcard | Meaning | ||||||||||||||||||||
* | Corresponds to the string selected by the wildcard * in the selector. | ||||||||||||||||||||
Terminating period | Corresponds to the partially-qualified specification of a name in the selector; corresponds to the string selected by the terminating period in the selector. | ||||||||||||||||||||
/ or ? | Corresponds to the character selected by the / or ? wildcard in the selector. | ||||||||||||||||||||
<n> | Corresponds to the string selected by the n-th wildcard in the selector, where n is an integer. | ||||||||||||||||||||
Allocation of wildcards to corresponding wildcards in the selector: The following rules must be observed when specifying a constructor:
Examples:
1The period at the end of the name may violate naming conventions (e.g. for fully-qualified file names). | |||||||||||||||||||||
without | Restricts the specification options for a data type. | ||||||||||||||||||||
-cat | Specification of a catalog ID is not permitted. | ||||||||||||||||||||
-corr | Input format: [[C]’][V][m]m.na[’] Specifications for the data type product-version must not include the correction status. | ||||||||||||||||||||
-gen | Specification of a file generation or file generation group is not permitted. | ||||||||||||||||||||
-man | Input format: [[C]’][V][m]m.n[’] Specifications for the data type product-version must not include either release or correction status. | ||||||||||||||||||||
-odd | The data type x-text permits only an even number of characters. | ||||||||||||||||||||
-sep | With the data type “text”, specification of the following separators is not permitted: ; = ( ) < > ' ' (i.e. semicolon, equals sign, left and right parentheses, greater than, less than, and blank). | ||||||||||||||||||||
-tempfile | Specification of a temporary file is not permitted (see #file or @file under filename). | ||||||||||||||||||||
-user | Specification of a user ID is not permitted. | ||||||||||||||||||||
-vers | Specification of the version (see “file(no)”) is not permitted for tape files. | ||||||||||||||||||||
-wild | The file types posix-filename and posix-pathname must not contain a pattern (character). | ||||||||||||||||||||
mandatory | Certain specifications are necessary for a data type. | ||||||||||||||||||||
-corr | Input format: [[C]’][V][m]m.naso[’] Specifications for the data type product-version must include the correction status and therefore also the release status. | ||||||||||||||||||||
-man | Input format: [[C]’][V][m]m.na[so][’] Specifications for the data type product-version must include the release status. Specification of the correction status is optional if this is not prohibited by the use of the suffix without-corr. | ||||||||||||||||||||
-quotes | Specifications for the data types posix-filename and posix-pathname must be enclosed in single quotes. |
Table 4: Data type suffixes