オブジェクト型の値には,次の2種類があります。
オブジェクトリファレンスとは,DMAオブジェクトへのリファレンスを示すプロパティの値です。例えば,dmaProp_ParentContainerプロパティの値がこれに当たります。
オブジェクト型の値のうち,オブジェクトリファレンスは検索条件に直接指定できません。検索で指定する場合には,オブジェクトリファレンスが示す実体であるDMAオブジェクトのOIID文字列を指定します。例えば,dmaProp_ParentContainerプロパティの値を指定したい場合,検索条件にはdmaProp_ParentContainerプロパティが参照している実体のDMAオブジェクト(Containerオブジェクトなど)のOIIDを表す文字列を指定します。
このOIID文字列の値は,検索実行時には,次のどちらかの方法でオブジェクトリファレンスの値に変換する必要があります。
また,検索結果としてオブジェクト型の値を取得した場合は,oiidstr関数を使用して,そのオブジェクト型の値が表すオブジェクトリファレンスの実体であるオブジェクトのOIIDが取得できます。oiidstr関数の詳細については,「5.9.3(3) <oiidstr関数>の詳細」を参照してください。
次に,オブジェクト型のデータ型を使用する表現形式および述語について説明します。また,Java クラスライブラリで扱うデータ型との対応についても説明します。
なお,オブジェクト型の値を使用する演算子および関数はありません。
オブジェクト型の値の表現形式を,次の表に示します。
表5-12 オブジェクト型データの表現形式
値の種類 | 定義 |
---|---|
プロパティ | Object型のプロパティ (dmaProp_DataType=DMA_DATATYPE_OBJECT dmaProp_Cardinality=255と定義されたプロパティ) またはオブジェクトリファレンスを表すプロパティ |
評価対象がオブジェクト型の値である述語を次の表に示します。
表5-13 オブジェクト型の値を評価対象とする述語
述語の種類 | 述語 |
---|---|
比較述語 | = |
In述語 | IN |
なお,比較述語,In述語では,オブジェクトリファレンス同士を比較できます。
Java クラスライブラリで扱うデータ型との対応を次の表に示します。
表5-14 edmSQLのオブジェクト型とJava クラスライブラリで扱うデータ型との対応
edmSQLのデータ型 | Java クラスライブラリで扱うデータ型 | 値 |
---|---|---|
オブジェクト型 (基本単位がVariableArray型のプロパティ) | DbjVArray | 次のように定義されているプロパティの値としてだけ対応します。
|
オブジェクト型のデータ型の値として基本単位がVariableArray型以外のプロパティの値(オブジェクトリファレンス)を扱う場合は,<変換関数>を使用するか,<?パラメタ>を使用してください。