| Statement | Format | Relationships | Entities | 
|---|---|---|---|
| Main procedure | Program Has Program Entry Point | ProgramEntry.Name=<source-name> ProgramEntry.Main Entry Flag=true | |
| Procedure specification | P name B EXPORT | Program Has Program Entry Point | ProgramEntry.Name=<name> | 
| CALL | CALL ‘name’ | Program Calls Program Entry Point | ProgramEntry.Name=<name> | 
| CALL | CALL varname | Program Calls Program Entry Decision | Decision attributes: 
 | 
| CALLB | CALLB ‘name’ … | Program Calls Bound Procedure Program Entry Point | ProgramEntry.Name=<name> | 
| CALLB | CALLB procptr | Program Calls Bound Procedure Decision | Decision attributes: 
 | 
| CALLP | D name PR EXTPGM(‘ename’) C CALLP name | Program Calls Program Entry Point | ProgramEntry.Name=<ename> | 
| CALLP | D name PR EXTPGM (varname) C CALLP name | Program Calls Program Entry Decision | Decision attributes: 
 | 
| CALLP | D name PR EXTPROC(‘ename’) C CALLP name 1) | Program Calls Bound Procedure Program Entry Point | ProgramEntry.Name=<ename> | 
| CALLP | D name PR EXTPROC(procptr) C CALLP name | Program Calls Bound Procedure Decision | Decision attributes: 
 | 
| CALLP | D name PR C CALLP name 2) | Program Calls Bound Procedure Program Entry Point | ProgramEntry.Name=<name> | 
| File description (static) | F file-name | external-file-name=<file-name> | |
| File description (static) | F file-name EXTFILE(‘ExtFileName’) | external-file-name=<ExtFileName> | |
| File description (static) | F file-name EXTMBR(‘ExtMbrName’) | external-file-name= <ExtMbrName> | |
| File description (static) | F file-name EXTFILE(‘ExtFileName’) EXTMBR(‘ExtMbrName’) | external-file-name= <ExtFileName>.<ExtMbrName> | |
| File description (dynamic) | F file-name EXTFILE(varname) | decision-var=<varname> | |
| File description (dynamic) | F file-name EXTMBR(varname) | decision-var=<varname> | |
| File description (dynamic) | F file-name EXTFILE(varname) EXTMBR(varname2) | decision-var=<varname> | |
| File description (dynamic) | F file-name EXTFILE(varname) 
EXTMBR('ExtMbrName') | decision-var=<varname> | |
| CHAIN | F file-name (static-file-description) 3) C CHAIN record-name | Program Reads File | File.Name=<program-name>.<file-name> File.File Type=FILE File.DD Name=<file-name> | 
| CHAIN | F file-name (static-file-description) 3) C CHAIN record-name | File Assigned To Data Store | DataStore.Name=<external-file-name> DataStore.DSNAME=<external-file-name> | 
| CHAIN | F file-name (dynamic-file-description) 3) C CHAIN record-name | Program Reads File Decision | Decision attributes: 
 | 
| DELETE | F file-name (static-file-description) 3) C DELETE record-name | Program Deletes From File | File.Name=<program-name>.<file-name> File.File Type=FILE File.DD Name=<file-name> | 
| DELETE | F file-name (static-file-description) 3 C DELETE record-name | File Assigned To Data Store | DataStore.Name=<external-file-name>Data Store.DSNAME=<external-file-name> | 
| DELETE | F file-name (dynamic-file-description) 3) C DELETE record-name | Program Deletes From File Decision | Decision attributes: 
 | 
| EXFMT | F file-name WORKSTN (static-file-description) 3) C EXFMT record-name | Program Sends/Receives Screen | Screen.Name= <external-file-name>.<record-name> | 
| EXFMT | F file-name WORKSTN (dynamic-file-description) 3 C EXFMT record-name | Program Sends/Receives Screen Decision | Decision attributes: 
 | 
| READ, READE, READP, READPE, | F file-name (static-file-description) 3) C READ record-name | Program Reads File | File.Name=<program-name>.<file-name> File.File Type=FILE File.DD Name=<file-name> | 
| READ, READE, READP, READPE, | F file-name (static-file-description) 3) C READ record-name | File Assigned To Data Store | DataStore.Name=<external-file-name> DataStore.DSNAME=<external-file-name> | 
| READ, READE, READP, READPE, | F file-name (dynamic-file-description) 3) C READ record-name | Program Reads File Decision | Decision attributes: 
 | 
| READ, READE, READP, READPE, | F file-name WORKSTN (static-file-description) 3) C READ record-name | Program Receives Screen | Screen.Name= <external-file-name>.<record-name> | 
| READ, READE, READP, READPE, | F file-name WORKSTN (dynamic-file-description) 3) C READ record-name | Program Receives Screen Decision | Decision attributes: 
 | 
| WRITE | F file-name (static-file-description) 3) C WRITE record-name | Program Inserts Into File | File.Name=<program-name>.<file-name> File.File Type=FILE File.DD Name=<file-name> | 
| WRITE | F file-name (static-file-description) 3) C WRITE record-name | File Assigned To Data Store | DataStore.Name=<external-file-name>Data Store.DSNAME=<external-file-name> | 
| WRITE | F file-name (dynamic-file-description) 3) C WRITE record-name | Program Inserts Into File Decision | Decision attributes: 
 | 
| WRITE | F file-name WORKSTN (static-file-description) 3) C WRITE record-name | Program Sends Screen | Screen.Name= <external-file-name>.<record-nam | 
| WRITE | F file-name WRKSTN (dynamic-file-description) 3) C WRITE record-name | Program Sends Screen Decision | Decision attributes: 
 | 
| UPDATE | F file-name (static-file-description) 3) C UPDATE record-name | Program Updates File | File.Name=<program-name>.<file-name> File.File Type=FILE File.DD Name=<file-name> | 
| UPDATE | F file-name (static-file-description) 3) C UPDATE record-name | File Assigned To Data Store | DataStore.Name=<external-file-name>Data Store.DSNAME=<external-file-name> | 
| UPDATE | F file-name (dynamic-file-description) 3) C UPDATE record-name | Program Updates File Decision | Decision attributes: 
 | 
| UPDATE | F file-name WORKSTN (static-file-description) 3) C UPDATE record-name | Program Sends Screen | Screen.Name= <external-file-name>.<record-name> | 
| UPDATE | F file-name WORKSTN (dynamic-file-description) 3 C UPDATE record-name | Program Sends Screen Decision | Decision attributes: 
 |