Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

File hierarchy

&pagelevel(3)&pagelevel

The existence of a basic system syntax file is a prerequisite for the use of SDF. In addition, multiple subsystem syntax files and, for each task, one group syntax file and one or more user syntax files can also be active. If a command or a statement is defined in more than one active system syntax file, the definition from the system syntax file last activated is used.

Certain rules govern how SDF selects a syntax file in order to fetch the information it requires in instances when syntax files of more than one type are simultaneously active for a user ID. The rules produce a hierarchy of syntax files that is applicable for a task under a certain user ID.
The following constellations are possible:

  • only the system syntax files are active

  • the system syntax files and a group syntax file are active

  • the system syntax files and the user syntax files are active

  • the system syntax files, a group syntax file and the user syntax files are active

  • only a group syntax file is active

  • a group syntax file and the user syntax files are active

Note that for all these constellations, as of BS2000/OSD-BC V1.0, the set of possible commands and statements also depends on the privileges assigned to the objects in question.

Only the system syntax files are active

In the simplest case, only the system syntax files are activated. Which commands and statements may be entered then depends solely upon the contents of the system syntax files.

System syntax files and group syntax file are active

If a group syntax file has been activated in addition to the system syntax files for the user ID, the definitions contained in the group syntax file (including global information) take precedence over those in the system syntax files. The disabling of a command or a statement in the group syntax file also counts as a definition. Only when a command or a statement is defined exclusively in the system syntax files does SDF take the information from there. Which commands and statements may be entered depends on the contents of both types of file.

System syntax files and user syntax files are active

If user syntax files have been activated in addition to the system syntax files, the definitions of BS2000 commands (implemented via system modules) contained in the former must be fully contained in the system syntax files. Otherwise, the definitions in the user syntax files (including global information and disabled commands) take precedence over those in the system syntax files.

System, group and user syntax files are active

If both a group syntax file and user syntax files have been activated in addition to the system syntax files, the following applies:

The command set permitted in a user syntax file is determined by the definitions contained in the group syntax file and the system syntax files. This means that a user syntax file must not contain system commands which

  • are disabled in the group syntax file or the system syntax files,

  • or that do not exist in these files,

  • or for which the user does not have at least one of the requisite privileges.

However, disabled commands, modifications and global information in the user syntax files take precedence over the definitions in the group and system syntax files.

If a system command (implemented via system modules) is defined in all three types of syntax file, the definition contained in the user syntax file must be fully contained in the group syntax file.

The following possible cases exist.

  • A user syntax file contains user-defined commands (implemented in the form of procedures):
    all system commands (implemented via system modules) contained in the procedure must be covered by definitions in the system syntax files or the group syntax file.

  • A command is disabled in a user syntax file:
    the command cannot be executed, even if its definition is covered by the group syntax file or the system syntax files.

  • A user syntax file contains a system command for which an operand value has been changed:
    the command is executed as defined in the user syntax file.

  • The group syntax file or the system syntax files contain a command which is not defined in any of the user syntax files:
    the user may use the command as long as it is not explicitly disabled in the user syntax file.

  • A command is disabled in the group syntax file.
    The command cannot be executed, even if it is defined in the user syntax file and covered by a definition in the system syntax files.

Only a group syntax file is active

The MODIFY-SDF-PARAMETERS command (see “SDF Management” [2 (Related publications)]) can be used to assign a group syntax file to a profile ID. If the HIERARCHY operand is set to *NO, only the specified group syntax file (no system syntax files) is activated (at LOGON) for all tasks of user IDs with this profile ID. In this case, the possible command and statement inputs are determined solely by the contents of this group syntax file.

One group syntax file and user syntax files are active

If no system syntax files are active for a task (see above) and one or more user syntax files are active in addition to the group syntax file, the definitions of the BS2000 commands (implemented via system modules) contained in the user syntax file(s) must be fully covered by the group syntax file. Apart from this, the definitions in the user syntax file(s) (including global information and disabled commands) take precedence over those in the group syntax file.