Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Syntax of the command description

&pagelevel(3)&pagelevel

The syntax of the BCAM command language is explained in the following three tables. Although BCAM commands are not primarily SDF commands, their presentation is similar to the SDF format.

Table 1: Metasyntax

Certain characters and representation formats are used in the command/statement formats. These are explained in Table 1.

Table 2: Data types

Variable operand values are represented in BCAM by data types. Each data type represents a particular set of values. The number of data types available is limited to those described in Table 2.

The description of data types applies to all commands and statements. For this reason, only deviations from Table 2 are explained in the corresponding operand descriptions.

Table 3: Data type suffixes

Data type suffixes identify additional input rules for data types. The suffixes extend or restrict the possible range of values. In the manual, the following suffixes are represented in abbreviated form:

lower-case
version
gen

generation
low
vers

The description of the data type suffixes applies to all commands and statements. For this reason, only deviations from Table 3 are explained in the corresponding operand descriptions.

Table 1: 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 "Data types" and "Data type suffixes" ).

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 operand is dependent on a higher-ranking operand.

,GUIDED-DIALOG = *Y ES (...)


*Y ES(...)


|

SCREEN-STEPS = *NO /


|


*YES


|


|


|

A vertical bar identifies related operands within a structure. Its length marks the beginning and end of a structure. A structure may contain further structures. The number of vertical bars preceding an operand corresponds to the depth of the structure.

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 guaranteed alias (abbreviation) for the command or statement name.

HELP-SDF                         Alias: HPSDF

*none
*default
*unchanged

Underlined lowercase characters indicate operand values that can only be specified by omitting the operand or operand value.

DIAG = *none / STOP

*ALL

*all indicates operand values that can only be specified by omitting the operand value.

A-IP = *all / <x-string 1 .. 8>

Metasyntax

Table 2: Data types

Data type                

Character set            

Special rules    

name

A...Z
0...9
$, #, @

Must not begin with 0...9.

group-name
host-name
line-name
node-name
processor-name

A...Z
0...9
# ,@, $
Length: maximum 8 characters


application-name
rout-name

A...Z
0...9
# ,@, $
Length: maximum 8 characters

$ as the first character in application-name is only permitted for systems applications

sokhost-name

A...Z
0...9
#, @, $, -, /, !, ", +, *,>, <, ?,
., &
& and / can only be specified in C‘ ‘ and must be doubled
Length: maximum 32 characters

Alphanumeric string which can be subdivided into multiple substrings separated by a period or hyphen

nea-name

Alphanumeric characters
Length: 16 characters

Consists of the first eight characters of the application name and the first eight characters of the host name, both left-aligned and filled with spaces. If only the application name part is specified then BCAM forms the HOST name part on the basis of the command.

osi-name

Alphanumeric characters;
Length: maximum 78 characters


socket-name

Alphanumeric characters; Length: maximum 78 characters


alphanum-name


A...Z
0...9
$, #, @

cat-id

A...Z
0...9

Not more than 4 characters;
must not begin with the string PUB

command-rest

freely selectable


composed-name

A...Z
0...9
$, #, @
hyphen
period
catalog ID

Alphanumeric string that can be split into multiple substrings by means of a period or hyphen.
If a file name can also be specified, the string may begin with a catalog ID in the form :cat: (see data type filename).

c-string

EBCDIC character

Must be enclosed within single quotes;
the letter C may be prefixed; any single quotes occurring within the string must be entered twice.

date

0...9
Structure identifier:
hyphen

Input format: yyyy-mm-dd

yyyy:

year; optionally 2 or 4 digits

mm:

month

dd:

day

device

A...Z
0...9
hyphen

Character string, max. 8 characters in length, corresponding to a device available in the system. In guided dialog, SDF displays the valid operand values. For notes on possible devices, see the relevant operand description.

fixed

+, -
0...9
period

Input format: [sign][digits].[digits]

[sign]:

+ or -

[digits]:

0...9

must contain at least one digit, but may contain up to 10 characters (0...9, period) apart from the sign.

filename

A...Z
0...9
$, #, @
hyphen
period

Input format:

[:cat:][$user.] { file | file(no) | group

group { (*abs) | (+rel) | (-rel) } }

:cat:

optional entry of the catalog identifier;
character set limited to A...Z and 0...9;
maximum of 4 characters; must be enclosed in colons; default value is the catalog identifier assigned to the user ID, as specified in the user catalog.

$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;
may be split into a number of partial names using a period as a delimiter:
name1[.name2[...]]
namei does not contain a period and must not begin or end with a hyphen;
file can have a maximum length of 41 characters; it must not begin with a $ and must include at least one character from the range A...Z.

filename (continued)


#file             (special case)
@file           (special case)

# or @ used as the first character indicates temporary files or job variables, depending on system generation.

file(no)

tape file name no: version number;
character set is A...Z, 0...9, $, #, @.
Parentheses must be specified.

group

name of a file generation group (character set: as for “file”)

group { (*abs) | (+rel) | (-rel) }

(*abs)

absolute generation number (1-9999);
* and parentheses must be specified.

(+rel)
(-rel)

relative generation number (0-99);
sign and parentheses must be specified.

integer

0...9, +, -

+ or -, if specified, must be the first character.

partial-filename

A...Z
0...9
$, #, @
hyphen
period

Input format: [:cat:][$user.][partname.]

:cat:

see filename

$user.

see filename


partname

optional entry of the initial part of a name common to a number of files or file generation groups in the form:
name1.[name2.[...]]
namei (see filename).
The final character of “partname” must be a period.
At least one of the parts :cat:, $user. or partname must be specified.

posix-filename

A...Z
0...9
special characters

String with a length of up to 255 characters;
consists of either one or two periods or of alphanumeric characters and special characters.
The special characters must be escaped with a preceding \ (backslash); the / is not allowed.
Must be enclosed within single quotes if alternative data types are permitted, separators are used, or the first character is a ?, ! or ^
A distinction is made between uppercase and lowercase.

posix-pathname

A...Z
0...9
special characters
structure identifier: slash

Input format: [/]part1/.../partn

where parti is a posix-filename;
max. 1023 characters;
must be enclosed within single quotes if alternative data types are permitted, separators are used, or the first character is a ?, ! or ^

product-version

A...Z
0...9
period
single quote

Input format:

[[C]' ][V][m]m.naso[' ]

 |  |
 |  correction status
 release status

where m, n, s and o are all digits and a is a letter.
Whether the release and/or correction status may/must be specified depends on the suffixes to the data type (see suffixes without-corr, without-man, mandatory man and mandatory-corr in "Data type suffixes").
product-version may be enclosed within single quotes (possibly with a preceding C).
The specification of the version may begin with the letter V.

structured-name

A...Z
0...9
$, #, @
hyphen

Alphanumeric string which may comprise a number of substrings separated by a hyphen.
First character: A...Z or $, #, @

text

freely selectable

For the input format, see the relevant operand descriptions.

time

0...9
structure identifier: colon

Time-of-day entry:

Input format: { hh:mm:ss |

hh:mm |

hh }

hh:

hours

mm:

minutes

ss:

seconds

Leading zeros may be omitted.

vsn


a)

A...Z
0...9

a)

Input format: pvsid.sequence-no
max. 6 characters


pvsid:

2-4 characters;
PUB must not be entered


sequence-no:

1-3 characters

b)

A...Z
0...9
$, #, @

b)

Max. 6 characters;
PUB may be prefixed, but must not be followed by $, #, @.

x-string

Hexadecimal:
00...FF

Must be enclosed in single quotes; must be prefixed by the letter X. There may be an odd number of characters.

x-text

Hexadecimal:
00...FF

Must not be enclosed in single quotes; the letter X must not be prefixed.
There may be an odd number of characters.

Data types

Table 3: 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) integer.

unit with “integer” only: additional units.
The following units may be specified:

days
hours
minutes
seconds

byte
2Kbyte
4Kbyte
Mbyte

x..y special

With the other data types: length specification
For data types catid, date, device, product-version, time and vsn the length specification is not displayed.

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 by the implementation. “special” can be preceded by other suffixes. The following specifications are used:


arithm-expr

bool-expr

string-expr

expr

cond-expr

arithmetic expression (SDF-P)

logical expression (SDF-P)

string expression (SDF-P)

freely selectable expression (SDF-P)

conditional expression (JV)

with                      

Extends the specification options for a data type.

-compl

When specifying the data type “date”, SDF expands two-digit year specifications in the form yy-mm-dd to:

20jj-mm-tt
19jj-mm-tt

if jj < 60
if jj >= 60

-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 type “name”.

with (contd.)

-wild(n)








Parts of names may be replaced by the following wildcards.
n denotes the maximum input length when using wildcards.
Due to the introduction of the data types posix-filename and posixpathname, SDF now accepts wildcards from Unix-based systems (referred to below as POSIX wildcards) in addition to the usual BS2000 wildcards. However, as not all commands support POSIX wildcards, their use for data types other than posix-filename and posix-pathname can lead to semantic errors.
Only POSIX wildcards or only BS2000 wildcards should be used within a search pattern. Only POSIX wildcards are allowed for the data types posixfilename and posix-pathname. If a pattern can be matched more than once in a string, the first match is used.

BS2000 wildcards

Meaning

*

Replaces an arbitrary (even empty) character string. If the string concerned starts with *, then the * must be entered twice in succession if it is followed by other characters and if the character string entered does not contain at least one other wildcard.

Terminating period

Partially-qualified entry of a name.
Corresponds implicitly to the string “./*”, i.e. at least one other character follows the period.

/

Replaces any single character.

<s x :s y >

Replaces a string that meets the following conditions:

  • It is at least as long as the shortest string (sx or sy)

  • It is not longer than the longest string (sx or sy)

  • It lies between sx and sy in the alphabetic collating sequence; numbers are sorted after letters (A...Z0...9)

  • sx can also be an empty string (which is in the first position in the alphabetic collating sequence)

  • sy can also be an empty string, which in this position stands for the string with the highest possible code (contains only the characters X'FF' )

<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).

with-wild(n)
(continued)


-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 * appearing at the first position must be duplicated if it is followed by other characters and if the entered string does not include at least one further wildcard.

?

Replaces any single character; not permitted as the first character outside single quotes.

[cx -cy ]

Replaces any single character from the range defined by c x and c y , 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 [s1cx-cys2].

[!cx -cy ]

Replaces exactly one character not in the range defined by c x and c y, including the limits of the range. cx and cy must be normal characters.
The expressions [!c x -c y ] and [!s] can be combined into [!s1cx-cys2 ].

[!s]

Replaces exactly one character not contained in string s. The expressions [!s] and [!cx-cy] can be combined into [!s1cx-cys2].

with (contd.)

wild-constr(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:
All wildcards in the selector are numbered from left to right in ascending order (global index).
Identical wildcards in the selector are additionally numbered from left to right in ascending order (wildcard-specific index).
Wildcards can be specified in the constructor by one of two mutually exclusive methods:

  1. Wildcards can be specified via the global index: <n>

  2. The same wildcard may be specified as in the selector; substitution occurs on the basis of the wildcard-specific index. For example: the second “/” corresponds to the string selected by the second “/” in the selector

with-wild-constr
(continued)

The following rules must be observed when specifying a constructor:

  • The constructor can only contain wildcards of the selector.

  • If the string selected by the wildcard <...> or [...] is to be used in the constructor, the index notation must be selected.

  • The index notation must be selected if the string identified by a wildcard in the selector is to be used more than once in the constructor. For example: if the selector “A/” is specified, the constructor “A<n><n>” must be specified instead of “A//”.

  • The wildcard * can also be an empty string. Note that if multiple asterisks appear in sequence (even with further wildcards), only the last asterisk can be a non-empty string, e.g. for “****” or “*//*”.

  • Valid names must be produced by the constructor. This must be taken into account when specifying both the constructor and the selector.

  • Depending on the constructor, identical names may be constructed from different names selected by the selector. For example: “A/*” selects the names “A1” and “A2”; the constructor “B*” generates the same new name “B” in both cases.
    To prevent this from occurring, all wildcards of the selector should be used at least once in the constructor.

  • If the constructor ends with a period, the selector must also end with a period. The string selected by the period at the end of the selector cannot be specified by the global index in the constructor specification.

with-wild-constr (continued)

Examples:

Auswahlmuster

Auswahl

Konstruktionsmuster

neuer Name

A//*

AB1
AB2
A.B.C

D<3><2>

D1
D2
D.CB

C.
<A:C>/<D,F>

C.AAD
C.ABD
C.BAF
C.BBF

G.<1>.<3>.XY<2>

G.A.D.XYA
G.A.D.XYB
G.B.F.XYA
G.B.F.XYB

C.<A:C>/<D,F>

C.AAD
C.ABD
C.BAF
C.BBF

G.<1>.<2>.XY<2>

G.A.A.XYA
G.A.B.XYB
G.B.A.XYA
G.B.B.XYB

A//B

ACDB
ACEB
AC.B
A.CB

G/XY/

GCXYD
GCXYE
GCXY 1)
G.XYC

1) The 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: ; = ( ) < > 'BLANK' (i.e. semicolon, equals sign, left and right parentheses, greater than, less than, and blank).

-temp-file

Specification of a temporary file is not permitted (see #file or @file under filename).

without (contd.)


-user

Specification of a user ID is not permitted.

-vers

Specification of the version (see “file(no)”) is not permitted for tape files.
The file types posix-filename and posix-pathname must not contain a pattern (character).

-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.

Data type suffixes

BCAM commands in alphabetical order

The BCAM commands are represented in alphabetical order. At the beginning of every command description, there is a table which lists the possible command sources for this command. At the end of each command description, there is a table with the messages and acknowledgments for this command.

You use the DCSTART, DCOPT, BCMOD and BCOPTION commands to customize your BCAM settings. The section "Operand settings" provides an overview of the period of validity, function and default values of these BCAM settings.