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 = *Y ES(...) *Y ES(...) SCREEN-STEPS = *NO / *YES ,SPECIAL-FUNCTIONS = *NO / *YES ,FUNCTION-KEYS = *NO / *YES ,NEXT-FIELD = *NO / *YES ,UNGUIDED-DIALOG = *Y ES(...) / *NO *Y ES(...) SPECIAL-FUNCTIONS = *NO / *YES ,FUNCTION-KEYS = *NO / *YES |
Representation of the syntax of the user command HELP-SDF
This syntax description is valid for SDF V4.6A.The syntax of the SDF command/statement language is sexplained in the following three tables.
Table 1 : Notational conventions
The meanings of the special characters and the notation used to describe command and statement formats are explained in table
1.
Table 2 : 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 2.
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 3 : Suffixes for data types
Data type suffixes define additional rules for data type input. They contain a length or interval specification. They 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
3 contains a number of items in italics which are not part of the syntax. They are only used to make the table easier to read. For special data types that are checked by the implementation, table
3 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 table 3 are explained in the relevant operand descriptions.
Metasyntax
Representation | Meaning | Examples |
UPPERCASE LETTERS | Uppercase letters denote | HELP-SDF SCREEN-STEPS = *NO |
UPPERCASE LETTERS in boldface | Uppercase letters printed in boldface | GUIDANCE-MODE = *YES |
= | The equals sign connects an operand | GUIDANCE-MODE = *NO |
< > | Angle brackets denote variables | SYNTAX-FILE = <filename 1..54> |
Underscoring | Underscoring denotes the default | GUIDANCE-MODE = *NO |
/ | A slash serves to separate | NEXT-FIELD = *NO / *YES |
(...) | Parentheses denote operand values | ,UNGUIDED-DIALOG = *Y ES(...) / *NO |
[ ] | Square brackets denote operand | SELECT = [*BY-ATTRIBUTES](...) |
Indentation | Indentation indicates that the operand | ,GUIDED-DIALOG = *Y ES(...) *Y ES(...) SCREEN-STEPS = *NO / *YES |
A vertical bar identifies related | SUPPORT = *TAPE(...) *TAPE(...) VOLUME = *ANY (...) *ANY (...) ... | |
, | A comma precedes further | GUIDANCE-MODE = *NO / *YES ,SDF-COMMANDS = *NO / *YES |
list-poss(n): | The entry “list-poss” signifies that a | 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 |
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 multiple |
c-string | EBCDIC character | Must be enclosed within single quotes; |
date | 0...9 | Input format: yyyy-mm-dd yyyy: year; optionally 2 or 4 digits Only date specifications between 1.1.2000 and |
device | A...Z | Character string, max. 8 characters in length, |
fixed | +, - | Input format: [sign][digits].[digits] [sign]:+ or - must contain at least one digit, but may |
filename | A...Z | Input format: [:cat:][$user.] { file | file(nr) | group | group {(*abs) | (+rel) | (-rel) } } |
:cat: optional entry of the catalog identifier; | ||
$user. optional entry of the user ID; | ||
$. system default ID | ||
file file or job variable name; not begin or end with a hyphen; | ||
#file (special case) @file (special case) # or @ used as the first character indicates | ||
file(no) tape file name | ||
group name of a file generation group | ||
group {(*abs) | (+rel) | (-rel) } | ||
(*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: see filename partname optional entry of the initial part of a name |
posix-filename | A...Z | String which may have a maximum length of |
posix-pathname | A...Z | Input format: [/]part1/.../partn |
product-version | A...Z | Input format: [[C]' ][V][m]m.naso[' ] a: release status 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: hh: hours where leading zeros may be omitted |
vsn | Case a) A...Z | Case a) Input format: pvsid.sequence-no |
Case b) A...Z | Case b) Max. 6 characters; | |
x-string | Hexadecimal: | Must be enclosed in single quotes; must be |
x-text | Hexadecimal: | Must not be enclosed in single quotes; |
Suffixes for data types
Suffix | Meaning |
x..y unit | With data type “integer”: interval specification |
x minimum value permitted for “integer”. x is an (optionally signed) integer. | |
y maximum value permitted for “integer”. y is an (optionally signed) | |
unit with “integer” only: additional units. The following units may be specified: | |
x..y special | With the other data types: length specification |
x: minimum length for the operand value; x is an integer. | |
y: maximum length for the operand value; y is an integer. | |
x=y: the length of the operand value must be precisely x. | |
special Specification of a suffix for describing a special data type that is checked | |
with | Extends the specification options for a data type. |
-compl | When specifying the data type “date”, SDF expands two-digit year specifications 20yy-mm-dd if yy < 60 |
-low | Uppercase and lowercase letters are differentiated. |
Suffix | Meaning | |
-pathcompl | For specifications for the data type “filename”, SDF adds the catalog and/or | |
-under | Permits underscores (_) for the data types “name” and “composed-name”. | |
-wild(n) | Parts of names may be replaced by the following wildcards. | |
BS2000 | Meaning | |
* | Replaces an arbitrary (even empty) character string. If the | |
Terminating | 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 | |
with-wild(n) | ||
-s | Replaces all strings that do not match the specified string s. | |
Wildcards are not permitted in generation and version specifications for file | ||
POSIX | Meaning | |
* | Replaces any single string (including an empty string). An * | |
? | Replaces any single character. It is not permitted as the first | |
[cx-cy] | Replaces any single character from the range defined by cx | |
[s] | Replaces exactly one character from string s. | |
[!cx-cy] | Replaces exactly one character not in the range defined by cx | |
[!s] | Replaces exactly one character not contained in string s. | |
with-wildconstr(n) | ||
Specification of a constructor (string) that defines how new names are to be | ||
Wildcard | Meaning | |
* | Corresponds to the string selected by the wildcard * in the | |
Terminating | Corresponds to the partially-qualified specification of a name in | |
/ or ? | Corresponds to the character selected by the / or ? wildcard in | |
<n> | Corresponds to the string selected by the n-th wildcard in the | |
Allocation of wildcards to corresponding wildcards in the selector: | ||
|
Suffix | Meaning | ||||||||||||||||||||
with-wildconstr(n) | The following rules must be observed when specifying a constructor:
| ||||||||||||||||||||
with-wildconstr(n) | 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[' ] | ||||||||||||||||||||
-gen | Specification of a file generation or file generation group is not permitted. | ||||||||||||||||||||
-man | Input format: [[C]' ][V][m]m.n[' ] | ||||||||||||||||||||
-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 | ||||||||||||||||||||
-tempfile | Specification of a temporary file is not permitted (see #file or @file under | ||||||||||||||||||||
-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 | ||||||||||||||||||||
mandatory | Certain specifications are necessary for a data type. | ||||||||||||||||||||
-corr | Input format:[[C]' ][V][m]m.naso[' ] | ||||||||||||||||||||
-man | Input format: [[C]' ][V][m]m.na[so][' ] | ||||||||||||||||||||
-quotes | Specifications for the data types posix-filename and posix-pathname must |
Meaning of operands
After the format of each command there is a detailed description of all the operands, the possible value assignments and their functions.
Otherwise the same metasyntax is used in describing operands as in the representation of the command formats (see above).
Variable %UNIQUE
If a file name ends with %unique or %UNIQUE, this string will be replaced by another string, which varies with each new call.
f the receiving system is a Unix or Windows system, a suffix may follow %unique or %UNIQUE separated by a dot, e.g. "file1%unique.txt". This suffix must not contain any dot.
Only the already converted file name is displayed in both the log and the messages.
%UNIQUE is recognized and correctly converted to:
receive file names, on initiation from the remote system with WRITE-MODE = *REPLACE-FILE or *NEW-FILE
receive file names of the TRANSFER-FILE command withWRITE-MODE = *REPLACE-FILE or *NEW-FILE
file names in CREATE-FT-PROFILE or MODIFY-FT-PROFILE to preset the receive file name in FTAC profiles
The following restrictions must be observed when using %UNIQUE:
The metacharacter string %UNIQUE can only be used when specifying a file name as a C-string. The file name specified here may be a DMS file, a POSIX file or a library member.
The string %UNIQUE may be preceded by a prefix, provided the syntax rules for file names (especially the maximum file length) are not violated after %UNIQUE is replaced by the defined string (see above).
% characters are allowed in POSIX file names. Consequently, if the string %UNIQUE or %unique appears (anywhere) in a file name, and no substitution is desired, the string must be entered in the command as %%UNIQUE or %%unique. The duplicate % character will be removed on the target system.
%UNIQUE can be used to uniquely identify a library member, but may only be specified in the member name or the version designation, not both. The member cannot be entered using the *LIB(...) syntax in this case. The following syntax options are available:
C'lib/type/prefix%UNIQUE(version)'
C'lib/type/prefix%UNIQUE()/prefix%UNIQUE(version)'
C'lib/type/member(prefix%UNIQUE)'
C'lib/type/member()/member(prefix%UNIQUE)'