4.2.3 全文検索機能付き文字列型プロパティを使用した全文検索

ここでは,全文検索機能付き文字列型プロパティを使用した全文検索について説明します。なお,全文検索機能付き文字列型プロパティを使用するにはHiRDB Text Search Plug-inが必要です。

<この項の構成>
(1) 全文検索機能付き文字列型プロパティとは
(2) 全文検索機能付き文字列型プロパティの全文検索
(3) 全文検索機能付き文字列型プロパティに対応しているクラスおよびメソッド

(1) 全文検索機能付き文字列型プロパティとは

全文検索が実行できる文字列型プロパティのことを全文検索機能付き文字列型プロパティといいます。全文検索機能付き文字列型プロパティを使用すると,edmSQLで次に示す検索条件を指定して文書の検索ができます。

  1. 指定した文字列がプロパティの値に含まれているか
  2. 指定した文字列を異表記展開した文字列がプロパティの値に含まれているか
  3. 指定した文字列を同義語展開した文字列がプロパティの値に含まれているか
  4. 指定した文字列の距離(文字数)が指定の距離内にあるか

また,これらの検索条件をANDまたはORで結ぶことができます。

(2) 全文検索機能付き文字列型プロパティの全文検索

edmSQLを使用して全文検索機能付き文字列型プロパティの値を取得する場合は,SELECT句にextracts関数を指定してください。また,全文検索機能付き文字列型プロパティを全文検索する場合は,WHERE句にcontains関数を指定してください。

全文検索機能付き文字列型プロパティを使用した全文検索の例を次に示します。

[例]
全文検索機能付き文字列型プロパティusrProp_DocSummaryに対応する文書中に,「コンピュータ」を同義語展開した文字列があるかどうかを検索し,文字列があればそのテキストデータを抽出します。
edmSQLの指定例

SELECT extracts(usrProp_DocSummary)
 FROM   usrClass_PropTextSearch
 WHERE  contains(usrProp_DocSummary,'{SYNONYM(myDic, "コンピュータ")}') is true

注 usrClass_PropTextSearchはdmaClass_DocVersionクラスのサブクラスです。
注意
全文検索機能付き文字列型プロパティはextracts関数またはcontains関数の第一引数に指定してください。それ以外の個所には指定できません。

(3) 全文検索機能付き文字列型プロパティに対応しているクラスおよびメソッド

全文検索機能付き文字列型プロパティに対応しているクラスおよびメソッドを次の表に示します。

表4-1 全文検索機能付き文字列型プロパティに対応しているクラスおよびメソッド

対応しているクラス対応するメソッド
CdbrVersionableDocument
  • CreateObject
  • GetPropertyValues
  • GetPropertyValuesAndLock
  • PutPropertyValues
CdbrDocument
  • CreateObject
  • GetPropertyValues
  • GetPropertyValuesAndLock
  • PutPropertyValues
CdbrReferentialContainer
  • CreateObject
  • GetPropertyValues
  • GetPropertyValuesAndLock
  • PutPropertyValues
CdbrConfiguratedReferentialContainer
  • CreateObject
  • GetPropertyValues
  • GetPropertyValuesAndLock
  • PutPropertyValues
CdbrVersionTraceableContainer
  • CreateObject
  • GetPropertyValues
  • GetPropertyValuesAndLock
  • PutPropertyValues
CdbrIndependentPersistence
  • CreateObject
  • GetPropertyValues
  • GetPropertyValuesAndLock
  • PutPropertyValues
CdbrEqlStatement
  • すべてのメソッド