ページの本文へ

Hitachi

ソフトウェア

第5回 XMLへのアプローチ 〜構造化文書検索〜

今回は検索対象となるデータについてのお話です。

日立高速全文検索シリーズでは、テキスト文書やMicrosoft Officeの文書など、さまざまなフォーマットの文書を検索対象としています。その中でも特徴的なのは 「XML/SGML文書」 を検索できるということです。

ここでちょっと 「XML/SGML文書」 について簡単に説明します。
ひとことで言うと 「意味を持ったテキスト文書」 と表現することができます。
HTMLでおなじみのタグを使用してテキスト文書に"意味"を持たせます。

例えば、「日立太郎」 というテキスト文字列について、タグを使用して記述してみますと、次のようになります。

<名前>
<姓>日立</姓><名>太郎</名>
</名前>

これで 「日立太郎」 なるテキストが、「名前は日立太郎。姓は日立、名は太郎。」 という構造からなる"意味を持った"テキストに変身しました。これが 「XML/SGML文書」 を検索する際、重要な情報となります。

日立高速全文検索シリーズでは、このようにタグ構造によって"意味を持つ"テキスト文書、すなわち 「XML/SGML文書」 に対して、そのタグ構造を活用した 「構造化文書検索」 を可能にしています。

その 「構造化文書検索」 についてですが、例えば"<名前>の中に 「日立」 とあるもの"の検索方法には大きく2つあります。1つは、"<名前>,日立,</名前>"をキーワードとして、順序性を判断して検索する方法です。もう一つは、タグ情報を管理して、タグ構造内のデータのみを検索する方法です。タグ情報を管理しての検索の方がよりきめ細かな検索を実行することができます。

では、タグ情報を管理すると実際にどのような検索ができるのかを、製品マニュアル等、章仕立てになっている文書が一番説明しやすいのでこれを例にご説明します。章仕立ての文書をXML的に表現すると、章の下に節があり、その節の中に見出しであるとか実際の本文があるといった具合です。

さて、このような文書を検索する方法ですが、大きく5種類あります。

構造検索

1.構造検索
タグを指定して検索することができます。
例えば、「<見出し>の中に、『最新技術』 という単語が入った文書を検索せよ」 といったことができます。

複数の構造を指定した検索

2.複数の構造を指定した検索
タグを複数指定して検索する方法です。
例えば、「<見出し>と<本文>の中に 『最新技術』 という単語を含む文書を検索せよ」 といったことができます。

繰り返し構造に対する検索

3.繰り返し構造に対する検索
繰り返しになるタグをひとまとめで検索することができます。
例えば、<章>という項目は<1章><2章><3章>…というように繰り返しの形をとります。これを利用して 「繰り返されるすべての<章>の中に 『最新技術』 という単語を含む文書を検索せよ」 といったことができます。


特定の構造に対する検索

4.特定の構造に対する検索
タグの構成情報を条件に含める方法です。
例えば、「<章>の中に 『最新』 という単語を含み、<節>の中に 『技術』 という単語を含む文書を検索せよ。ただし、条件として<節>というタグは<章>というタグの下にあること」 といったことができます。

タグ属性に対する検索

5.タグ属性に対する検索
文書の属性タグを条件にして検索する方法です。
例えば、「<印刷>の属性が 『印刷可能』 となっている文書を検索せよ」 といったことができます。


以上のように、「XML/SGML文書」 は、"意味をもった"テキストデータを取り扱うことができるため、インターネットショッピングや電子取引のようなシステム間を行き来する汎用的なデータフォーマットフォーマットとして、今後取り扱われていくことでしょう。
そんな際に便利な機能、それが 「構造化文書検索」 なのです。

次回は、「ランキング検索」 についてお話します。