Text Search Plug-inシステムで文書検索プラグインの環境を構築するには,文書検索プラグインが使用する表のSGMLTEXT型の列の作成に必要な情報を定義するファイルを作成します。必要な情報とは,SGMLテキストデータの構造と文書要素を表すタグ名称などを定義するDTD,検索に不要なタグや文書要素の削除,参照タグと外字コードの対応を定義する正規化パラメタのことです。これらの情報をまとめて,SGML定義情報といいます。
ファイルは,テキストエディタなどを使用して作成します。作成する列の種別によって必要なファイルは異なります。作成する列の種別ごとに必要となるファイルを次の表に示します。
表2-4 文書検索プラグインのSGML定義情報の作成に必要なファイル
必要なファイル名 | 列種別 | |
---|---|---|
構造なし文書用の列 | 構造化文書用の列 | |
DTDファイル | × | ○ |
正規化パラメタファイル | × | △ |
DTDファイルとは,構造化文書用の列に対して,登録する文書の構造を定義するためのファイルです。一つの列に一つのDTDファイルを作成します。DTDファイルはテキストエディタなどで作成します。なお,構造なし文書用の列を作成する場合,このファイルを作成する必要はありません。
Text Search Plug-inでは,一つの列に対して一つのDTDを対応付けます。通常,SGML文書にはDTDが含まれています。しかし,Text Search Plug-inで管理する列には,DTDは文書と切り離して入力します。これによって,DTDの異なる文書の登録を避けられます。列でのDTDとSGML文書の分割について,次の図に示します。
図2-3 DTDとSGML文書の分割
なお,列にDTDファイルが登録されていれば,SGML文書にDTDが含まれていても問題はありません。ただし,SGML文書に含まれているDTDの内容が,列に登録されているDTDの内容と矛盾している場合は,エラーになります。
Text Search Plug-inではSGMLに関して次の制限があります。DTDを決定する場合は,これらの制限に注意してください。
SGML文書中の改行コードの変換方法を次の表に示します。
表2-5 SGML文書中の改行コードの変換方法
改行コードの前の文字 | 改行コードの後ろの文字 | 変換方法 |
---|---|---|
1バイト文字 | 1バイト文字 | 改行コードをスペースに置換 |
1バイト文字以外の文字 | 改行コードを削除 | |
1バイト文字以外の文字 | 1バイト文字 | |
1バイト文字以外の文字 |
そのほかの改行コードの変換規則は次のとおりです。
正規化パラメタファイルには,SGML文書中のタグを制御するパラメタを記述します。正規化パラメタファイルはテキストエディタなどで作成します。なお,SGML文書中のタグの制御が必要ない場合,このファイルを作成する必要はありません。
正規化パラメタファイルは,DTD単位に作成します。つまり,構造化文書用の列に対して一つ作成します。
正規化パラメタファイルは,正規化パラメタと特定文字データ変換マップで構成されます。
正規化パラメタファイルの記述例を次の図に示します。
図2-4 正規化パラメタファイルの記述例
SGML文書の正規化の例を次の図に示します。
図2-5 SGML文書の正規化の例