INSTANCE OF 条件は、オブジェクト参照が特定のクラスまたはインターフェイスのインスタンスであるかどうかを判別する。
一般形式

構文規則
- オブジェクト一意名-1 はオブジェクト参照とする。
- クラス名-1 は、リポジトリ段落またはこのソース要素のクラス管理段落内で指定されたクラスの名前とする。
- インターフェイス名-1 は、リポジトリ段落またはこのソース要素のクラス管理段落内で指定されたインターフェイスの名前とする。
一般規則
- いずれのオプション指定も使用しないと、「オブジェクト一意名-1」オブジェクトが、「クラス名-1」クラスまたはその下位クラスのインスタンスである場合、または「インターフェイス名-1」インターフェイスまたはそのサブインターフェイスのインスタンスである場合に、INSTANCE OF テストの結果は真になる。
- FACTORY 指定を使用し、ONLY 指定は使用しない場合、「オブジェクト一意名-1」オブジェクトが「クラス名-1」クラスのファクトリであれば、INSTANCE OF テストの結果は真となる。
- ONLY 指定を使用し、FACTORY 指定は使用しない場合、「オブジェクト一意名-1」オブジェクトが「クラス名-1」クラスのインスタンスであり、その下位クラスでなければ、INSTANCE OF テストの結果は真となる。
- FACTORY 指定および ONLY 指定の両方を使用する場合に、「オブジェクト一意名-1」オブジェクトが「クラス名-1」クラスのファクトリであり、その下位クラスでなければ、INSTANCE OF テストの結果は真となる。