5.4.8 <名前>

<名前>の定義について説明します。<名前>では,クラス名,プロパティ名,相関名および関数名を表現します。

<名前>の基本要素は,<識別子>と<ID文字列>です。

<この項の構成>
(1) <名前>として指定できる字句
(2) 規約詳細

(1) <名前>として指定できる字句

<名前>として指定できる字句を,次の表に示します。

表5-29 <名前>として指定できる字句

種 類参照先
クラス名
  • <識別子>
  • <ID文字列>
プロパティ名
  • <識別子>
  • <ID文字列>
  • <特殊なプロパティ>
関数名(変換関数)
  • oiidstr
  • objref
  • oiid
(全文検索関数)
  • contains
  • contains_with_score
  • score
  • extracts
(概念検索関数)
  • concept_with_score
  • score_concept
相関名<識別子>

(2) 規約詳細

<名前>の詳細について説明します。

(a) クラス名の詳細

<クラス名>は,文書空間内でDMAクラスを識別するための名称(dmaProp_DisplayNameの値),またはGUID値のID文字列表現です。使用できる文字列の長さは,HiRDBのテーブル名に使用できる文字列の長さに従います。

一つのedmSQL文の中で,同じクラスを識別するための<クラス名>の表現に,名称とID文字列を混用することはできません。一つのedmSQL文では,<クラス名>は,名称またはID文字列で統一して表記してください。例えば,<FROM句>の<クラス名>にID文字列を指定した場合は,<WHERE句>などでプロパティを修飾する<クラス名>にもID文字列を指定する必要があります。

<識別子>および<ID文字列>の詳細は,「5.4.7 <識別子>」および「5.4.9 <ID文字列>」を参照してください。

(b) プロパティ名の詳細

<プロパティ名>は,文書空間内でプロパティを識別するための名称(dmaProp_DisplayNameの値),またはGUID値のID文字列表現です。使用できる文字列の長さは,HiRDBのカラム名に使用できる文字列の長さに従います。

一つのedmSQL文の中で,同じプロパティを識別するための<プロパティ名>の表現に,名称とID文字列を混用することはできません。なお,そのプロパティがどのDMAクラスのプロパティであるかが明確でない場合は,<プロパティ名>を<クラス名>または<相関名>で修飾する必要があります。

一つのedmSQL文では,<プロパティ名>は,名称またはID文字列で統一して表記してください。例えば,<選択項目>の<プロパティ名>にID文字列を指定した場合は,ORDER BY句で指定する<プロパティ名>にも,ID文字列を指定する必要があります。

<識別子>,<ID文字列>および<特殊なプロパティ>の詳細は,「5.4.7 <識別子>」,「5.4.9 <ID文字列>」および「5.4.10 <特殊なプロパティ>」を参照してください。

注意事項
DocumentBrokerでは,プロパティの定義は文書空間ごとに定義されています。したがって,異なるクラスに登録されたプロパティであっても,同じ文書空間内のクラスであれば,プロパティの性質は同じことが保証されています。ほかのオブジェクト指向言語で,クラスのスコープ単位にプロパティが定義されているものとは異なりますので,ご注意ください。
(c) 関数名の詳細

<関数名>は,edmSQLで予約されていないキーワードとして登録されている関数を識別するための名称です。

関数についての詳細は,「5.9 関数指定の構文規則」を参照してください。

(d) 相関名の詳細

<相関名>は,同じクラスを結合する場合に,結合するクラスを区別するための名称です。一つの<FROM句>の中に,同じクラスを複数回指定する場合には,必ず<相関名>を指定して,それぞれのクラスを一意に識別できるようにしてください。

そのほか,<相関名>は,<クラス名>の別名としても使用できます。

<相関名>として使用できる文字列の長さなどの制限については,HiRDBの相関名に関する制限に従います。