Syntax diagrams
To change the format of syntax diagrams throughout the information center,
go to Preferences in the Home navigation panel, select Syntax diagrams
and select your preferred format.
Syntax diagrams can be displayed in three formats:
railroad diagram format, dotted decimal format, and Backus-Naur format (BNF).
This page provides information about each format.
Railroad diagrams are a visual format
suitable for sighted users of the information center.
Dotted decimal format and BNF are text-based formats
that are more helpful for blind or partially-sighted users.
For the benefit of screen reader users, dotted decimal
format and BNF are described in this Help topic
before railroad diagrams.
Of the text-based formats, BNF is more challenging for beginners to
understand than dotted decimal and railroad diagram formats.
Tip for Screen Reader Users: Ensure that your screen reader is
formatted to read out all punctuation before reading syntax diagrams and
viewing this this Help topic.
Dotted decimal format
In dotted decimal format, each syntax element is written on a separate line.
Single compound syntax elements are two or more syntax elements that appear
in consecutive order. The absence of consecutive syntax elements can also
represent a single compound syntax element as well.
Each line starts with a dotted decimal number;
for example, 3 or 3.1 or 3.1.1.
For screen reader users, to hear these numbers correctly
make sure that your screen reader is formatted to read out
punctuation. All the syntax elements that have the same
dotted decimal number (for example, all the syntax elements
that have the number 3.1) are mutually exclusive alternatives.
If you hear the lines "3.1 USERID" and "3.1 SYSTEMID", your
syntax can include either USERID or SYSTEMID, but not both.
The dotted decimal numbering level denotes the level of nesting.
For example, if a syntax element with dotted decimal number 3
is followed by a series of syntax elements with dotted decimal number 3.1,
all the syntax elements numbered 3.1
are subordinate to the syntax element numbered 3.
Characters (such as commas) separate a string of syntax elements and
display in the syntax just before the items they separate. These characters
might appear on the same line as each item or on a separate line with the
same dotted decimal number as the relevant items. The line may also show
another symbol giving information about the syntax elements. For example,
the lines 5.1*, 5.1 LASTRUN, and 5.1 DELETE indicate that if you use more
than one of syntax elements LASTRUN and DELETE, they must be separated
by a comma. If no separator is given, assume that a blank separates each
syntax element.
A syntax element preceded by the % symbol indicates a reference defined
elsewhere. The string following the % symbol is the name of a syntax fragment
rather than a literal. For example, the line 2.1 %OP1 means that you should
refer to separate syntax fragment OP1.
Certain words and symbols are used next to the dotted decimal numbers
in order to provide additional information about syntax elements. Occasionally,
these words and symbols might occur at the beginning of the element itself.
For ease of identification, if a word or symbol is part of a syntax element,
it will be preceded by the backslash (\) character. The * symbol can be
used next to a dotted decimal number to indicate that the syntax element
repeats. For example, syntax element *FILE with the dotted decimal number
3 is given the format 3\*FILE. Format 3* FILE indicates that syntax
element FILE repeats. Format 3* \* FILE indicates that syntax element
* FILE repeats.
The words and symbols used with dotted decimal numbers are as follows:
-
? represents an optional syntax element.
A dotted decimal number followed by the ? symbol indicates
that all syntax elements with a corresponding dotted decimal
number and any subordinate syntax elements are optional.
If there is only one syntax element with a dotted decimal number,
the ? symbol will appear on the same line as the syntax element
(for example, 5? NOTIFY). If there is more than one syntax element with
that dotted decimal number, the ? symbol appears on a line by itself and
is followed by the syntax elements, which are optional. For example, if
you are using a screen reader and hear the lines "5 ?", "5 NOTIFY" and
"5 UPDATE", syntax elements NOTIFY and UPDATE are optional; you can
choose one or none of them. The ? symbol is equivalent to a bypass line
in a railroad diagram.
-
! represents a default syntax element.
A dotted decimal number followed by the ! symbol and appended
to the last digit of the dotted decimal number indicates that
this syntax element is the default from the elements with the
same dotted decimal number. Only one of the syntax elements that
share the same dotted decimal number can specify a !. For example, if you
are using a screen reader and hear the lines "2? FILE," "2.1! (KEEP)",
"2.1 (DELETE)", in this instance (KEEP) is the default option for
the FILE keyword. If you include the FILE keyword but do not state your
option, default option KEEP will be applied as well as the syntax element
marked with the ! symbol. The default also applies to the next higher dotted
decimal number. In the previous example, the default applies to 2? FILE
as well as to 2.1! (KEEP), meaning that if you omit the word "FILE", the
default "FILE(KEEP)" is used. However, you might instead hear the lines
"2? FILE", "2.1", "2.1.1! (KEEP)", "2.1.1 (DELETE)" because the default only
applies to the next higher dotted decimal number, which in this case is
2.1 and does not apply to 2? FILE. Nothing is used if the word "FILE" is omitted.
-
* indicates that a syntax element can be repeated zero or more times.
A dotted decimal number followed by the * symbol indicates that this syntax
element can be used zero or more times; this is optional and can be repeated.
For example, if you are using a screen reader and hear the line "5.1* data-area",
you can include more than one data area or you can include none. If you
hear the lines "3*", "3 HOST", "3 STATE" you can include "HOST", "STATE"
both together or with nothing included. Note that if a dotted decimal number
has an asterisk next to it and there is only one item with that dotted
decimal number, you can repeat that same item more than once. If a dotted
decimal number has an asterisk next to it and several items have that dotted
decimal number, you can use more than one item from the list but cannot
use the items more than once each. In the previous example, you could write
"HOST STATE" but not "HOST HOST". The * symbol is equivalent to a loop-back
line in a railroad syntax diagram.
-
+ represents that a syntax element must be included one or more times.
A dotted decimal number followed by the + symbol indicates that this syntax
element must be included one or more times; it must be included at least
once and can be repeated. For example, if you are using a screen reader
and hear the line "6.1+ data-area", you must include at least one data
area. If you hear the lines "2+", "2 HOST", "2 STATE", you must include
"HOST", "STATE", or both. The * symbol can only repeat a particular item
if it is the only item with that dotted decimal number. The + symbol, like
the * symbol, is equivalent to a loop-back line in a railroad syntax diagram.
BNF (Backus-Naur format)
In BNF, the syntax is written out in a single line.
Square brackets [ ], braces { }, and the vertical bar
symbol |, are used to describe the syntax.
Collectively, these symbols are known as controls.
Blanks are used to separate the syntax elements
from the square brackets, braces, and vertical bars.
Use your screen reader's "speak next word"
(usually Control+LeftArrow key)
and "speak prior word" (usually Control+RightArrow key)
to move between successive BNF controls and syntax elements.
The characters you need to include when constructing your command (left
and right brackets and separators such as a commas) are located at the
point at which you need to enter them from your keyboard. For example,
a left bracket may be read out before a list of options. In some programming
languages such as C and C++, square brackets, braces and the vertical bar
symbol are used within the language. For ease of identification where the
square bracket, brace, or vertical bar symbol appears in the syntax diagram
as a part of the programming language, it is preceded by the backslash (\).
If you hear "\{", enter the "{" when you are constructing your command
because the "{" is not a part of the syntax diagram structure.
The BNF rendering works as follows:
-
Braces { } are used to indicate a group of syntax elements in the same
way as ( ) are used in algebra.
For example, AUTH( { USERID | SYSTEMID } ) shows that USERID and SYSTEMID
are the group of options for the AUTH keyword. Note that this example
syntax includes a "(" and ")" that you need to key in around the option
you select. If you selected the USERID option, your command would be AUTH(USERID).
-
Square brackets [ ] mean a construct that is optional.
The optional construct is started with [ and ends with ]. The square brackets [ ] and
braces { } can both be used on the same group of syntax elements. For example,
the presence of the square brackets in the syntax [ AUTH( { USERID | SYSTEMID
} ) ] means that you can omit the keyword AUTH and its options from the
command you construct.
-
The vertical bar (|) is an OR sign and means an alternative.
All constructs to the right of the |
are an alternative to the construct to the left of the |.
The scope of the | is delimited by either the end of
the group or construct -
shown by ] or } - or the end of the syntax.
The vertical bar applies to all the items in the delimited group,
not just those items immediately adjacent to the bar.
For example, { A | B C } means either A, or B and C.
If you want to indicate either A and C, or
B and C, the correct syntax is { A | B } C .
-
Exclamation marks (!) placed around a value
indicate the default value in a set of alternatives.
For example, AUTH( { !USERID! | SYSTEMID
} ) means that USERID is the default option for the AUTH keyword.
Take careful note of the position of any square brackets [ ] around a construct
containing a default. If there are square brackets around the whole construct
but not around the set of alternatives, a default applies for the whole
construct. For example [ AUTH( { !USERID! | SYSTEMID } ) ] indicates
that a default applies for the whole construct. If you omit the AUTH keyword
from your completed command, the default setting AUTH(USERID) will be included
automatically. However, if there are square brackets around the whole construct
and also around the set of alternatives, a default applies only for the
set of alternatives. For example [ AUTH [ ( { !USERID! | SYSTEMID
} ) ] ] indicates that a default applies only for the set of alternatives.
In this case, if you omit the AUTH keyword from your completed command,
no default setting will be included. If you include the AUTH keyword but
do not state your choice of option, the default option USERID is applied.
-
An ellipse (...) following a construct
indicates that the syntax elements given in that construct
can optionally be repeated.
For example, { HOST | STATE | TYPE } ...
means that you can include more than one of the
keywords HOST, STATE, and TYPE.
If the construct only includes one syntax element,
you can repeat that same syntax element more than once.
However, if the construct includes more than one syntax
element, you can use more
than one of the elements, but not more than once each.
In the previous example, you could
write HOST STATE but not HOST HOST.
-
A syntax element that starts and ends with a % (percentage symbol)
means that the element is the name of a syntax fragment rather than a literal.
It indicates a reference that is defined elsewhere. For example, %OP1%
means that you should refer to separate syntax fragment OP1.
Railroad diagram format
Railroad diagrams are a visual format suitable for sighted users of the
information center. This section describes how to read syntax diagrams
in Railroad Diagram Format.
-
Read the diagrams from left-to-right, top-to-bottom, following the main
path line. Each diagram begins on the left with double arrowheads and ends
on the right with two arrowheads facing each other.
_____________________________________________________________________
| |
|>>__| Syntax Diagram |__________________________________________>< |
| |
|_____________________________________________________________________|
-
If a diagram is longer than one line, the first line ends with a single
arrowhead and the second line begins with a single arrowhead.
__________________________________________________________________________
| |
| >>__| The first line is long and extends the width of the diagram |____> |
| |
| >__| Second Line |____________________________________________________>< |
| |
|__________________________________________________________________________|
-
A word in all uppercase is a parameter that you must spell exactly
as shown.
_____________________________________________________________________
| |
|>>__PARAMETER___________________________________________________>< |
| |
|_____________________________________________________________________|
-
If you can abbreviate a parameter, the optional part of the parameter is
shown in lowercase. (You must type the text that is shown in uppercase.
You can type none, one, or more of the letters that are shown in lowercase.)
Note: Some TPFDF commands are case sensitive and contain parameters
that must be entered exactly as shown. This information is noted in the
description of the appropriate commands.
_____________________________________________________________________
| |
|>>__PARAMeter___________________________________________________>< |
| |
|_____________________________________________________________________|
-
A word in all lowercase italics is a variable. Where you see a variable
in the syntax, you must replace it with one of its allowable names or values,
as defined in the text.
_____________________________________________________________________
| |
|>>__variable____________________________________________________>< |
| |
|_____________________________________________________________________|
-
Required parameters and variables are shown on the main path line. You
must code required parameters and variables.
_____________________________________________________________________
| |
|>>__REQUIRED_PARAMETER__required_variable_______________________>< |
| |
|_____________________________________________________________________|
-
If there is more than one mutually exclusive required parameter or variable
to choose from, they are stacked vertically.
_____________________________________________________________________
| |
|>>__ _REQUIRED_PARAMETER_1_ ____________________________________>< |
| |_REQUIRED_PARAMETER_2_| |
| |_required_variable_a__| |
| |_required_variable_b__| |
| |
|_____________________________________________________________________|
-
Optional parameters and variables are shown below the main path line. You
can choose not to code optional parameters and variables.
_____________________________________________________________________
| |
| >>__ _______________________________________ ___________________>< |
| |_OPTIONAL_PARAMETER__optional_variable_| |
| |
|_____________________________________________________________________|
-
If there is more than one mutually exclusive optional parameter or variable
to choose from, they are stacked vertically below the main path line.
_____________________________________________________________________
| |
| >>__ ______________________ ____________________________________>< |
| |_OPTIONAL_PARAMETER_1_| |
| |_OPTIONAL_PARAMETER_2_| |
| |_optional_variable_a__| |
| |_optional_variable_b__| |
| |
|_____________________________________________________________________|
-
An arrow returning to the left above a parameter or variable on the main
path line means that the parameter or variable can be repeated. The comma
(,) means that each parameter or variable must be separated from the next
parameter or variable by a comma.
_____________________________________________________________________
| |
| <_,____________________ <_,___________________ |
| >>____REPEATABLE_PARAMETER_|____repeatable_variable_|___________>< |
| |
|_____________________________________________________________________|
-
An arrow returning to the left above a group of parameters or variables
means that more than one can be selected, or a single one can be repeated.
_____________________________________________________________________
| |
| <_,__________________________ |
| >>______ _REPEATABLE_PARAMETER_1_ _|____________________________>< |
| |_REPEATABLE_PARAMETER_2_| |
| |_repeatable_variable____| |
| |
|_____________________________________________________________________|
-
If a diagram shows a blank space, you must code the blank space as part
of the syntax. In the following example, you must code PARAMETER variable.
_____________________________________________________________________
| |
| >>__PARAMETER__ __variable______________________________________>< |
| |
|_____________________________________________________________________|
-
If a diagram shows a character that is not alphanumeric (such as commas,
parentheses, periods, and equal signs), you must code the character as
part of the syntax. In the following example, you must code PARAMETER=(begin.end).
_____________________________________________________________________
| |
| >>__PARAMETER=(begin.end)_______________________________________>< |
| |
|_____________________________________________________________________|
-
Default parameters and values are shown above the main path line. The TPFDF
system uses the default if you omit the parameter or value entirely.
_____________________________________________________________________
| |
| _DEFAULT___ _0________ |
| >>__|___________|__|__________|_________________________________>< |
| |_PARAMETER_| |_variable_| |
| |
|_____________________________________________________________________|
-
References to syntax notes are shown as numbers enclosed in parentheses
above the line. Do not code the parentheses or the number.
_____________________________________________________________________
| |
| (1) |
| >>__PARAMETER___________________________________________________>< |
| |
| Note: |
| (1) An example of a syntax note. |
| |
|_____________________________________________________________________|
-
Some diagrams contain syntax fragments, which serve to break
up diagrams that are too long, too complex, or too repetitious. Syntax
fragment names are in mixed case and are shown in the diagram and in the
heading of the fragment. The fragment is placed below the main diagram.
_____________________________________________________________________
| |
| >>__| Reference to Syntax Fragment |____________________________>< |
| |
| Syntax Fragment: |
| |__1ST_PARAMETER,2ND_PARAMETER,3RD_PARAMETER_____________________| |
| |
|_____________________________________________________________________|