ここでは,XML文書を管理するためのXMLプロパティマッピング機能およびXMLインデクスデータ作成機能について説明します。なお,XML文書を管理するための操作の詳細については,「6.10 XML文書を管理するための操作」を参照してください。
XMLプロパティマッピング機能とは,XML文書を登録する場合に,XMLファイル中のタグ間の文字列やタグの属性値を抽出して,XML文書のプロパティに割り当てて設定する機能です。タグ間の文字列やタグの属性値をXML文書のプロパティにマッピングすることによって,例えば,次のような操作ができるようになります。
XMLプロパティマッピング機能を使用するXMLファイルの例を次の図に示します。
図3-15 XMLプロパティマッピング機能を使用するXMLファイルの例
<prop>タグで囲まれた内容には,タイトルや著者,著者についての情報,バージョン情報などが,それぞれのタグ内の文字列または属性値として記述されています。
ここでは,XMLファイルをバージョン付き文書のコンテンツとして登録する場合について説明します。タイトルと著者の情報は,バージョニングオブジェクトのプロパティにマッピングします。また,バージョン情報は,バージョンオブジェクトのプロパティにマッピングします。
図3-15のXMLファイルに含まれる情報をXML文書のプロパティにマッピングした例を次の図に示します。
図3-16 XMLプロパティマッピング機能によってXML文書のプロパティにマッピングした例
この例では,<title>タグ間の文字列をバージョニングオブジェクトのusrProp_titleプロパティにマッピングしています。<author>タグ間の文字列は複数の情報を表すタグを含むので,バージョニングオブジェクトのusrProp_authorというVARRAY型のプロパティの構成要素のプロパティにそれぞれマッピングしています。<version>タグ間の文字列はバージョンオブジェクトのusrProp_Versionプロパティにマッピングしています。
なお,XMLプロパティマッピング機能を使用する場合は,前提プログラムとしてHiRDB Adapter for XMLが必要です。また,登録するXMLファイルの論理構造を明確にして,どのタグをどのプロパティにマッピングするかという対応を定義しておく必要があります。定義に必要なファイルには,ユーザが作成するファイルと,DocumentBrokerおよびHiRDB Adapter for XMLによって作成されるファイルがあります。XMLプロパティマッピング機能を使用するための定義については,マニュアル「DocumentBroker Version 3 システム導入・運用ガイド」を参照してください。
XMLプロパティマッピング機能は,次の文字コードで記述されたXMLファイルを対象に実行できます。
ただし,XMLプロパティマッピング機能でプロパティに設定される文字列は,Shift-JISになります。
XMLインデクスデータ作成機能とは,XML文書の作成時や更新時に,XMLファイルの構文解析を実行して,インデクスデータを作成し,XML文書の全文検索インデクスを登録する機能です。次の全文検索インデクスを登録できます。
インデクスデータ作成時には,XMLファイルから不要なタグを削除したり,不要なタグ間のテキストをタグごと削除したりできます。この場合,削除するタグについての定義は,フィルタリング定義ファイルとして作成しておく必要があります。フィルタリング定義ファイルについては,マニュアル「DocumentBroker Version 3 システム導入・運用ガイド」を参照してください。
XMLインデクスデータ作成機能を使用して全文検索インデクスを登録したXML文書は,構造指定検索の対象になります。構造指定検索について,次の図で説明します。
図3-17 構造指定検索で使用するXML文書の例
構造指定検索では,この例のXML文書1およびXML文書2に対して,「構造<chap>の下の構造<topic>の中に『W3C』が含まれる文書を検索する」などの検索ができます。この例の場合,XML文書2が検索結果として取得できます。また,「構造<chap>に設定されている属性『name』の値が『1章』である文書を検索する」というような場合にも使用できます。この例の場合,XML文書1が検索結果として取得できます。このように,構造を指定した全文検索のことを構造指定検索といい,XML文書の構造指定検索のことをXML構造指定検索といいます。検索の詳細については,「4. 検索機能」を参照してください。
なお,XMLインデクスデータ作成機能を使用する場合は,前提プログラムとして,HiRDB Adapter for XMLおよびPreprocessing Library for Text Searchが必要です。また,全文検索を実行する場合は,HiRDB Text Search Plug-inが必要です。XMLインデクスデータは,登録する文書の情報に,XML文書のアップロード情報を指定することで作成できます。
XMLインデクスデータ作成機能は,次の文字コードで記述されたXMLファイルを対象に実行できます。
ただし,全文検索インデクスにはShift-JISで登録されるため,全文検索の検索条件はすべてShift-JISで記述する必要があります。