ページの先頭行へ戻る
Symfoware Server V12.7.0 RDB運用ガイド(Textアダプタ編)
FUJITSU Software

2.6.2 Textアダプタ定義の例

3つの具体的な例を用いて、Textアダプタ定義の定義例を説明します。

CHAR型の列の文書データを全文検索の対象とする場合

Textアダプタ定義の設定については、CHAR型の列の文書データを全文検索の対象とする場合までの手順のとおりに設定します。インデックス定義ファイルの作成方法は、インデックス定義ファイルと同じ形式になります。

以下にTextアダプタ定義を以下に示します。

Textアダプタ定義
<TextAdapterDef>
   <ReplicationDef>
     <!-- 抽出定義名規定部 -->
     <REPNAME>書籍データ抽出定義</REPNAME>
   </ReplicationDef>
   <MappingDef>
     <!-- マッピングルール規定部 -->
     <TargetSearchDBname>SearchDB1</TargetSearchDBname>
     <Column  name = 'コード' > code </Column>
     <Column  name = '概要' > contents </Column>
   </MappingDef>
</TextAdapterDef>
  • 抽出定義名規定部の<REPNAME>タグには、抽出定義のREPNAMEの抽出定義名を指定します。
    ここでは、「書籍データ抽出定義」を指定しています。

  • マッピングルール規定部の<TargetSearchDBName>タグには、Accela BizSearchの検索データベース名を指定します。ここでは、「SearchDB1」を指定しています。

  • マッピングルール規定部の<Column>タグには、name属性の値として、検索対象または検索結果に付随する情報を格納する列名を指定します。<Column>タグには、列名に対応付けるインデックス定義ファイルのフィールド名を指定します。
    ここでは、「コード」列を「code」フィールドに、「概要」列を「contents」フィールドに対応付けています。「code」フィールドは、データベースの表の行を特定するために使用します。「contents」フィールドが全文検索の対象となります。

BLOB型の列の文書データを全文検索の対象とする場合(1)

Textアダプタ定義の設定については、BLOB型の列の文書データまでの手順のとおりに設定します。インデックス定義ファイルの作成方法は、インデックス定義ファイルと同じ形式になります。

以下に、Textアダプタ定義の説明をします。

Textアダプタ定義
<TextAdapterDef>
   <ReplicationDef>
     <!-- 抽出定義名規定部 -->
     <REPNAME>書籍データ抽出定義</REPNAME>
   </ReplicationDef>
   <DocumentTypeDef>
     <!-- 文書種別規定部 -->
     <TypeColumn name = '種別'>
        <DocumentType value = '1'>txt</DocumentType>
        <DocumentType value = '2'>doc</DocumentType>
        <DocumentType value = '3'>oas</DocumentType>
        <TargetColumn>概要</TargetColumn>
     </TypeColumn> 
   </DocumentTypeDef>
   <MappingDef>
     <!-- マッピングルール規定部 -->
     <TargetSearchDBname>SearchDB1</TargetSearchDBname>
     <Column  name = 'コード' >code </Column>
     <Column  name = '概要' > contents </Column>
   </MappingDef>
</TextAdapterDef>

CHAR型の列の文書データを全文検索の対象とする場合と異なるのは、以下の点です。

  • 全文検索の対象とする文書データを格納する列はBLOB型のため、文書種別規定部を規定します。

  • 文書種別規定部の<TypeColumn>タグにはname属性の値として、文書種別を規定する列名を指定します。
    ここでは、「種別」列を指定しています。

  • 文書種別規定部の<DocumentType>タグにはvalue属性の値として、文書種別を規定する列に格納した値を指定し、<DocumentType>タグの内容として、value属性の値に対応するAccela BizSearchが規定する文書種別文字列を指定します。
    ここでは、‘1’が「txt」(テキスト文書)、‘2’が「doc」(Word文書)、‘3’が「oas」(OASYS文書)と規定しています。

  • 文書種別規定部の<TargetColumn>タグには、<TypeColumn>タグのname属性で指定した文書種別を規定する列が対象とする文書データを格納する列名を指定します。
    ここでは、「概要」列を指定しています。

BLOB型の列の文書データを全文検索の対象とする場合(2)

BLOB型の列の文書データを全文検索の対象とし、ほかの列のデータを検索結果に付随する情報とする場合の例を以下に示します。
Textアダプタ定義の設定については、BLOB型の列の文書データを全文検索の対象する場合までの手順のとおりに設定します。

以下に、Textアダプタ定義の説明をします。

Textアダプタ定義
<TextAdapterDef>
   <ReplicationDef>
     <!-- 抽出定義名規定部 -->
     <REPNAME>書籍データ抽出定義</REPNAME>
   </ReplicationDef>
   <DocumentTypeDef>
     <!-- 文書種別規定部 -->
     <TypeColumn name = '種別'>
        <DocumentType value = '1'>txt</DocumentType>
        <DocumentType value = '2'>doc</DocumentType>
        <DocumentType value = '3'>oas</DocumentType>
        <TargetColumn>概要</TargetColumn>
     </TypeColumn> 
   </DocumentTypeDef>
   <MappingDef>
     <!-- マッピングルール規定部 -->
     <TargetSearchDBname>SearchDB1</TargetSearchDBname>
     <Column  name = 'コード' > code</Column>
     <Column  name = '日付' >date </Column>
     <Column  name = '著者' > author</Column>
     <Column  name = '書名' > title</Column>
     <Column  name = '概要' > contents</Column>
   </MappingDef>
</TextAdapterDef>

BLOB型の列の文書データを全文検索の対象とする場合(1)と異なるのは、以下の点です。

  • マッピングルール規定部の<Column>タグで、検索結果に付随する情報を格納する列名が指定されています。
    「日付」列を「date」フィールドに、「著者」列を「author」フィールドに、「書名」列を「title」フィールドに対応付けています。インデックス定義ファイルにより、「書名」列に対応する「title」フィールドには、検索フィールド種別が設定されているので、titleで検索することもできます。