Text Search Plug-inの抽象データ型関数とは,Text Search Plug-inが提供する全文検索機能および概念検索機能を使用するためのインタフェース関数です。文書検索プラグインは,SGMLTEXT型のデータ(文書)に対して全文検索および概念検索を使用するために,HiRDBにSGMLTEXT型を追加します。また,文字列検索プラグインは,FREEWORD型のデータ(文字列データ)に対して全文検索を使用するために,HiRDBにFREEWORD型を追加します。
SGMLTEXT型で全文検索および概念検索をする場合は,抽象データ型関数SGMLTEXTを使用して,表にSGMLTEXT型のデータとして文書を登録します。
FREEWORD型で全文検索をする場合は,抽象データ型関数FREEWORDを使用して,表にFREEWORD型のデータとして文字列データを登録します。
なお,FREEWORD型では,概念検索機能は使用できません。
Text Search Plug-inの提供する抽象データ型関数の種類を次に示します。
上記のうち,SGMLTEXT型の全文検索用の抽象データ型関数は,SGMLTEXT型の全文検索用インデクスおよび概念検索用インデクスに対して使用できます。SGMLTEXT型の概念検索用の抽象データ型関数は,SGMLTEXT型の概念検索用インデクスに対してだけ使用できます。また,FREEWORD型の全文検索用の抽象データ型関数は,FREEWORD型の全文検索用インデクスに対して使用できます。これらの抽象データ型関数をSQL文中に記述することで,SGMLTEXT型のデータ(文書)またはFREEWORD型のデータ(文字列データ)にアクセスできます。SQLの記述形式については,マニュアル「HiRDB Version 9 SQLリファレンス」を参照してください。
Text Search Plug-inが提供する抽象データ型関数の一覧を次の表に示します。
表4-1 Text Search Plug-inの抽象データ型関数一覧
用途 | 関数名 | 機能 | 型別サポート有無 | |
---|---|---|---|---|
SGML TEXT 型 | FREE WORD 型 | |||
データ 登録用 | SGMLTEXT | SGMLTEXT型のインスタンスを生成するコンストラクタ関数です。SGMLTEXT型の列にデータ(文書)を登録する場合にこの関数を使用します。 | ○ | × |
FREEWORD | FREEWORD型のインスタンスを生成するコンストラクタ関数です。FREEWORD型の列にデータ(文字列データ)を登録する場合にこの関数を使用します。 | × | ○ | |
データ 出力用 | extracts | 登録した文書または文字列データを出力します。出力する形式には,次の4種類あります。 | - | |
| ○ | ○ | ||
| ○ | × | ||
| ○ | × | ||
| ○ | × | ||
全文検索用 | contains | 全文検索条件式に一致する文書または文字列データを検索します。全文検索条件式には,次の6種類あります。 | - | |
| ○ | ○ | ||
| ○ | ○ | ||
| ○ | ○ | ||
| ○ | ○ | ||
| ○ | ○ | ||
| ○ | × | ||
contains_with_score | 全文検索条件式に一致する文書を検索します。 | ○ | ○ | |
score | contains_with_score関数で検索した文書のスコア値を取得します。検索条件に一致した文書ほどスコア値が高くなります。 | ○ | ○ | |
概念検索用 | concept_with_score | 概念検索条件式に適合する文書を検索します。また,スコアの計算をします。 | ○ | × |
score_concept | concept_with_score関数で検索した文書のスコア値を取得します。検索条件に対する適合度が高い文書ほどスコア値が高くなります。 | ○ | × | |
concept_with_terms | 概念検索条件式として指定した種文章から検索用特徴タームと重みを抽出します。 | ○ | × | |
terms_concept | concept_with_terms関数で抽出した検索用特徴タームと重みを取得します。 | ○ | × |