EGL は、COBOL 環境用の階層データベース・マネージャーである DL/I (Data Language/I) をサポートしています。
暗黙的および明示的な DL/I コードは、実際の DL/I コードとはわずかに異なる、強力な疑似 DL/I 構文を使用するため、注意してください。詳しくは、#dli ディレクティブを参照してください。
DL/I に精通していない場合は、「EGL プログラマー・ガイド」のDL/I データを参照してください。
DL/I データベースから読み取るそれぞれのセグメント・タイプごとに、DLISegment ステレオタイプを持つレコードを作成する必要があります (DLISegment ステレオタイプを参照)。
また、PSBRecord ステレオタイプを持つレコードも作成して (PSBRecord ステレオタイプ を参照) そのデータベースについて EGL に説明する必要もあります。PSBRecord には、EGL が DL/I データベースのプログラム仕様ブロック (PSB) との対話を行うために必要な情報が含まれています。 PSB はデータベースのマップのようなもので、さまざまなセグメントとその階層をリストします。
EGL I/O ステートメント (get など) を使用して、データベース内のデータにアクセスします。DL/I は、セグメント検索引数 (SSA) を使用して、 個々のセグメント (レコードと同等のもの) をデータベース内に配置します。 非修飾 SSA はセグメント・タイプのみを指定し、修飾 SSA は特定尾セグメントを識別します。 EGL は、生成する暗黙的コードの一部として SSA を作成します。 また、ユーザーが明示的コードの一部として、#dli ディレクティブ内に SSA を書き込むことも可能です。