例
以下の例は、WHILE ループを使用して $ZORDER を繰り返し呼び出し、一連の添え字ノードを検索します。
SET ^||a="groceries"
SET ^||a(1)="fruit"
SET ^||a(1,1)="apples"
SET ^||a(1,2)="oranges"
SET ^||a(3)="nuts"
SET ^||a(3,1)="peanuts"
SET ^||a(2)="vegetables"
SET ^||a(2,1)="lettuce"
SET ^||a(2,2)="tomatoes"
SET ^||a(2,1,1)="iceberg"
SET ^||a(2,1,2)="romaine"
SET $ZERROR="unset"
WRITE !,"last referenced: ",^||a(1,1)
WHILE $ZERROR="unset" {
WRITE !,$ZORDER }
QUIT
上の例は、最後に参照されたグローバル (この例では、プロセス・プライベート・グローバル) ^||a(1,1) で始まります。$ZORDER は ^||a(1,1) の値を含みませんが、以降の値を含みます。$ZORDER への呼び出しは、(1,2)、(2)、(2,1)、(2,1,1)、(2,1,2)、(2,2)、(3)、(3,1) の順序で添え字ツリー・ノードを検索します。それぞれの WRITE $ZORDER は連続する各ノードにデータ値を表示します。ノードがなくなると、エラー <UNDEFINED> ^||a(3,1) を生成します。^||a(3,1) が定義されていない ことに注意してください。^||a(3,1) が指定されるのは、$ZORDER がその後に別のグローバルを検出できないためです。