クライアントマシン上でのWWW 情報統合システム

北村泰彦 野田知哉 辰巳昭治
大阪市立大学工学部情報工学科

E-Mail: kitamura@info.eng.osaka-cu.ac.jp
WWW

Abstract

WWW
WWW

分散して存在する情報源から情報を抽出しクライアントマシン上で統合する
情報統合
情報源から情報抽出を行う仮想オブジェク
システムの構想について述べる．システムはト，情報統合を行う統合オブジェクト，ファイルアクセスなどを行う入出力オブジェクトから構成される．
上でこれらを組み合わせたり，それぞれの入力パラメータを変化させることで柔軟な情報利用者は統合が可能になる．

WWW

GUI

1 はじめに
近年インターネットは急速に社会に浸透し ，今やわれわれの日常生活を支えるために不可欠なインフラストラクチャの一つとなりつつある．インターネットが提供するサービ スの中でも WWW (World WideWeb) は最も人気の高いサービスの一つであり，学術研究，ビジネス取引，コミュニティ形成など を支援する様々な情報源がインターネット上に提供されている．これまで WWW 情報源はブラウザを介してアクセスされ，それぞれ単独で利用されることが一般的であったが，これらの情報源を組み合わせることができれば，以下の事例のように，その付加価値をさらに高めることが可能になる．

ワシントン大学の Oren Etzioni によるインターネットソフトボット の研究はインターネット 上にある既存の情報源を統合することにより，より高度な情報提供を可能にしている．例えば ，MetaCrawler1は複数の汎用検索エンジンの検索結果を統合することで，検索結果の質を向上させている [12]．Ahoy!2 はMetaCrawler の検索結果を電子メールデ ータベースから得られたアド レスをもとにフィルタリングするなどして個人のホームページを検索する専門検索エンジンである [13]．また ShopBot は インターネット上にある複数のバーチャルショップから価格情報を抽出し，比較ショッピングを可能にするサービ スである [1]．
また学術研究の分野においても WWW 情報源の統合に関する要求が高まっている．例えばヒトゲノム計
画においては現在，DNA や蛋白質の配列，三次元構造，機能，遺伝病，文献など に関するさまざ まなデ ータベースが WWW 上で公開されている．これらのデータベースは単体利用よりも相互利用できればより有用であり，DBGET3[4] や SRS4 [2] などではハイパーリンクを用いてデ ータの相互参照を可能にしている．
しかし ながら以上の WWW 情報統合は専用サーバ上でなされ，情報統合の仕様は設計者により決定された固定的なものである．したがって利用者は統合された情報を通常の WWW ブラウザでアクセスするだけであり，様々な WWW 情報源を自由に組み合わせたり，カスタマイズすることができないという制限がある．これに対して，ヒトゲノム計画など の分野では様々なデ ータベースに格納されたデ ータを，研究者自身が自由に組み合わせて新しい知見を得ることが今後更に要求されるようになる．そこで本稿ではクライアントマシン上で利用者が柔軟に WWW 情報源を統合したりカスタマイズできるようなシステムの構想を提案する．
1
2
3
4

http://www.metacrawler.com/
http://ahoy.cs.washington.edu:6060/
http://www.genome.ad.jp/dbget/dbget.html
http://www.embl-heidelberg.de/srs/srsc1

2

仮想 WWW オブジェクト に基づく WWW 情報統合

WWW 情報源は一般的に() という関数で表すことができる．ここでは情報が存在する場所を表す URL (Universal Resource Locator)，
は FORM 形式の WWW ペー
ジで用いられる入力パラメータリストである．これらの入力パラメータは GET あるいは POST メソッド
により WWW サーバに 送られ る [5]．FORM 形式でない WWW ページに関してはの値は空である．
はとにより得られる HTML(Hyper Text Markup Language) 文書である．例えば検索エンジンではは検索エンジンの URL，は検索キーワード，は検索結果を示すHTML 文書である．
WWW 情報源はインターネット上に分散して存在しており，通常はブラウザを介して利用者はとHT M L

f U RL; I N P U T

U RL

IN P U T

IN P U T

HT M LU RL

IN P U T

U RL

IN P U THT M L

U RL

IN P U Tを入力し ，その出力となる H T M L をブラウザに表示し て，情報を得るものである．本稿で対象とする WWW 情報統合は，複数の WWW 情報源からの出力 (H T M L) を合成したり，ある WWW 情報源からの出力 (H T M L の一部) を他の WWW 情報源の入力とすることを目的とする．これは従来の検索エンジンがキーワード により関連付けられたページ (URL) レベルの情報統合を行っていると見なせるのに対して，本研究における情報統合はページレベルよりも粒度の細かいパラグラフあるいは単語レベルの統合を目的とし ている．

しかしながらこのような WWW 情報統合を実現するためには以下の課題を解決する必要がある．

(P1) 自立分散的な情報源．WWW 情報源はインターネット上に分散して存在し ，それぞれのサーバ内で独自に管理運用されている．それらは HTTP を介したブラウザからの 1 対 1 のアクセスしか想定しておらず，複数の WWW 情報源を統合するためには共通の統合インタフェースを用意する必要がある．
(P2) 情報の混在．WWW ページは情報提供者が HTML を用いて自由に記述することができ，情報利用者が必要とし ないものも含めて様々な情報が混在する場合がある．例えば新聞社の WWW ページには新聞記事だけではなく，インデックスや広告なども含まれる．したがって効果的な情報統合を行うためには WWW ページから利用者が必要する情報だけを抽出する機能が必要である．

(P3) 準構造情報．WWW ページを記述する HTML は視覚的な構造を表すことはできるが，意味的な構造を表すことができない．WWW 情報統合において関連する情報を集めることを可能にするためには，HTML 文書を意味情報が付加された構造情報に変換する必要がある．
(P4) 情報統合．複数の WWW 情報源をパラグラフレベルで柔軟に組み合わせる手段が必要になる．
(P5) 利用者インタフェース．計算機の非専門家でも情報統合を容易に行なえる利用者インタフェースが必要になる．

(P6) スケーラビ リティ．インターネット 上には膨大な数の WWW 情報源が存在する．これらの情報源を統合するためには分散している多数の開発者が共同して情報統合を実現できるような仕組みが必要になる．

(P7) 動的な情報源．WWW 情報源はその内容や構造が頻繁に変更される可能性があり，その対処が必要になる．
以上の問題に対して本研究の示す解決策は以下のとおりである．

(A1) インターネット上に分散する WWW 情報資源をクライアント上で操作可能なように仮想 WWW オブジェクト化する．

2

WWW Resource

WWW Resource

WWW Resource

Virtual WWW
ObjectVirtual WWW
ObjectVirtual WWW
ObjectIntegration
ObjectIntegration
ObjectFile I/O
ObjectClient Machine

図 1: 仮想 WWW オブジェクトによる情報統合(A2,A3) HTML 文書を分解し ，意味付けされた構造化情報に変換する．この記述言語とし ては XML を採用する．

(A4) 仮想 WWW オブジェクト間のメッセージ交換を可能にすることでその統合を実現する．さらに高度な統合を実現するために メッセージ変換，フィルタリング，ファイル入出力など を行う特殊オブジェ
クトを用意する．

(A5) オブジェクトの統合を行なう GUI 環境を提供する．
(A6,A7) オブジェクトは利用者／開発者間で共有可能とすることにより，スケーラビ リティや動的な情報源の問題に対処する．
本稿では特に (A1) から (A4) の問題に対処する試みとして，図 1に示すような WWW 情報統合システムを提案する．インターネット上に存在する個別の WWW 情報源 (WWW Resource) は クライアントマシン上で抽象化された仮想 WWW オブジェクト (Virtual WWW Object) とし て扱われる．仮想 WWW オブジェ
クトは HTTP を介して WWW サーバにアクセスを行ない，HTML 文書を得る．そして得られた HTML 文書を分解して，情報の構造化，意味情報の付加を行なう．この記述言語とし ては XML[10] を採用する．情報統合は仮想 WWW オブジェクト間でメッセージ通信を可能にすることにより実現される．さらに高度な情報統合を実現するためにファ イル入出力やデ ータ操作を行なう特殊オブジェクトを用意する．ファ イル

入出力オブジェクト (File I/O Object) は情報統合の結果をファイルに保存するオブジェクトであり，統合オブジェクト (Integration Object) は メッセージ変換やフィルタリングなど のデータ操作を行うオブジェク
トである．

3

仮想 WWW オブジェクト
仮想 WWW オブジェクトはインターネット 上に存在する WWW 情報源を抽象化したもので，クライアントマシン上で他のオブジェクトとのインタラクションを行なうインタフェースを提供する．仮想 WWW
オブジェクトは入力パラメータを受け取ると，WWW 情報源に対して HTTP を介してアクセスし，得られた HTML 文書を基に意味タグを付加した構造化情報を出力とする．

3

<HTML><HEAD><TITLE>検索結果</TITLE></HEAD><BODY ><!-- 広告 1 == --><A HREF="http://www.ad1.com"><IMG SRC="ad1.gif" ></A><!-- 検索ヒット数 --><P>検索結果 10<!-- 第 1 項目 --><TABLE><!-- 項目番号とハイパーリンク --><TR><TD>1</TD><TD><A HREF="http://www.osaka-cu.ac.jp/">大阪市立大学のホームページ </A></TD></TR><!-- スコアと URL --><TR><TD>99%</TD><TD>http://www.osaka-cu.ac.jp/</TD></TR><!-- 文書サイズと最終更新日 --><TR><TD></TD><TD>3549 bytes, 1998/04/19</TD></TR><!-- 内容記述 --><TR><TD></TD><TD>2 月 2 日より大学の郵便番号が 558-8585(杉本キャンパス )，545-8585(阿倍野キャンパス ) に変わりました. 大阪市立大学学長からのメッセージ 大阪市立大学の場所 大阪市立大学の組織 大阪市立大学の歴史 学
内の公式....</TD></TR></TABLE><!-- 第 2 項目以降が続く --><!-- 広告 2 --><A HREF="http://www.ad2.com"><IMG SRC="ad2.gif" ></A></BODY></HTML>

図 2: HTML 文書の例
例えば検索エンジンの典型的な出力例は図 2のようなものである．

ここでは検索ヒット数，ヒットした HTML 文書の項目番号，ハイパーリンク，スコア，URL，文書サイズ，最終更新日，内容記述など が HTML を用いて記述されている．また検索結果以外の情報とし て広告情報も付加されている．仮想 WWW オブジェクトはこのような HTML 文書から（ 広告など の）不要なデ ータを除去し ，必要なデ ータを抽出して構造化し ，意味タグを付加する．その結果は図 3のようになる．

ここではデ ータの意味を表すタグとし て hits（ 検索ヒット 数 ），item（ 検索項目），title（ タイトル ），score（ スコア ），url，size（ 文書サイズ ），date（ 最終更新日），description（ 内容記述）が導入されている．この意味付けされた構造情報全体をメッセージと呼び message タグで囲っている．メッセージは後述
する統合ネットワークにおいてオブジェクト間で情報交換される．

さて，HTML 文書からメッセージへの変換は，スクリプト [8] やプログラミング言語を用いてハード コーデ ィングする方法がもっとも直接的であるが，プログラミングが煩雑になったり，情報源の更新に対して頑健でないという問題点がある．
．その対処とし ては，テンプレートを用いて自動的に情報抽出するような試み [7] も考えられる．また WWW データに対してど のような意味タグを付加するか，あるいはその一般化は重要な研究課題 [6] であるが，ここではそのような問題には立ち入らず，仮想 WWW オブジェクトの設計者が自由に設定できるものとする．

4

<message><hits>10</hits><item><title>大阪市立大学のホームページ </title><score>99%</score><url>http://www.osaka-cu.ac.jp/</url><size>3549</size><date>1998/04/19</date><description>2 月 2 日より大学の郵便番号が 558-8585(杉本キャンパス )，545-8585(阿倍野キャンパス ) に変わりました. 大阪市立大学学長からのメッセージ 大阪市立大学の場所 大阪市立大学の組織 大阪市立大学の歴史 学内の公式....</description></item><!-- 第 2 項目以降が続く --></message>

図 3: メッセージの例

4

統合ネット ワーク
仮想 WWW オブジェクトは URL や入力パラメータを入力とし て，メッセージと呼ばれる意味タグ付き構造情報を出力とする．WWW 情報統合は仮想 WWW オブジェクトや後述する特殊オブジェクト間で メッセージを介した情報交換を可能とすることにより実現される．オブジェクト間のメッセージ交換は形式的には

in@x = out@yとして記述される．ここで x,y は仮想 WWW オブジェクトであり，in@x は仮想 WWW オブジェクト x の入力パラメータを指定し ，out@y は y の出力 (の一部) を指定する．仮想 WWW オブジェクトの出力は入れ子構造を許す XML 記述であるので，その要素を特定するために a.b というような記法を用いる．これはデータオブジェクト b の内部オブジェクト a を指定している．データオブジェクトが複数存在する場合はその値はリストとなる．例えば ，図 3において検索項目の URL を指定する場合には url.item.message となる．
仮想 WWW オブジェクトの入力がリストである場合には，そのそれぞれの要素に対して処理を行い，出力はそれぞれの結果をマージしたものとなる．例えば検索エンジンに該当する仮想 WWW オブジェクト

search はある仮想 WWW オブジェクト object から入力 keyword としてキーワード 列を受け付け，その出力は HTML 文書であるとする．すなわち
keyword@search = keywords@objectとする．ここで，入力とし て<message><keywords>abc def</keywords><keywords>pqr xyz</keywords></message>を与えると，その出力は5<message><result><keywords>abc def</keywords><html>abc def の検索結果を示す HTML 文書</html></result><result><keywords>pqr xyz</keywords><html>pqr xyz の検索結果を示す HTML 文書</html></result></message>となる．

5

特殊オブジェクト
高度な情報統合を行うためにはファ イル入出力やメッセージの操作を行なう特殊オブジェクトが必要となる．代表的な特殊オブジェクトとしてはファ イル入出力オブジェクトとデ ータ操作オブジェクトがあり，それぞれについて述べる．
ファイル入力オブジェクト : ファ イル入力オブジェクトはローカルファ イルの内容をメッセージに変換するオブジェクトである．HTTP はローカルファ イルへのアクセスをサポートしているので，ファ イルの内容が HTML で記述されていないことを除いては，通常の仮想 WWW オブジェクトと同様に開発できる．

ファイル出力オブジェクト ： ファイル出力オブジェクトは情報統合により得られた情報をファイルに保存するために利用するオブジェクトである．ファイル出力に関し ては XML 形式あるいは HTML 形式のいずれかで出力される．HTML 形式の場合はそれを通常の WWW ブラウザで表示することができるが，XML 形式の場合は変換が必要になる．

集合演算オブジェクト ： 二つのオブジェクトからのメッセージ出力に対して集合演算を行なうオブジェク
トである．集合演算には和集合，差集合演算，共通集合演算がある．
関係演算オブジェクト ： 二つのオブジェクトからの出力に対してリレーショナル演算を行なうオブジェク
トである．これには直積演算，射影演算，選択演算が可能である．
これ以外にも様々な特殊オブジェクトを定義することが可能であるが，汎用的なオブジェクトの方が情報統合のために用意するオブジェクトの数が少なくてすむ．

6

具体例
ここで 図 4に示されるような検索エンジンの統合を具体例とし て示そう．検索すべきキーワード はファイルに保存されているとする．ファイル入力オブジェクト (File Input Object) はファイルからキーワードを読みだし ，検索エンジン A(Search Engine A) と検索エンジン B(Search Engine B) に送る．検索エンジン A では得られた検索結果をフィルタリングオブジェクトに送る．フィルタリングオブジェクトは検索結果のうち，スコアが 80%以上のもののみを統合オブジェクト（ UNION Object ）に送る．検索エンジン Bは検索結果をそのまま統合オブジェクトに送る．統合オブジェクトは二つの検索エンジンの検索結果に対6

File InputObject(A)SearchEngine A

SearchEngine B(B)(C)

Filtering
Object(D)UNION
Object(E)File Output
Object(F)

図 4: 検索エンジンの統合して，URL が両方に含まれるもののみを取り出し，ファイル出力オブジェクトに送る．ファイル出力オブジェクトはそれをファ イルに保存する．

7

まとめ
クライアントマシン上での WWW 情報統合システムの構想について述べた．利用者はそれぞれの WWW情報源を一つの部品と見なし ，それらを組み合わせることにより WWW 情報統合を行うことができる．また組み合わせる情報源を変えたり，それぞれの情報源の入力パラメータを変化させることで柔軟な情報統合が可能になる．現在は Java アプリケーションとし てプロトタイプを実装中であり，いくつかの仮想 WWWオブジェクトと特殊オブジェクト，そし てそれらを統合する GUI 環境 [11] を開発した．

今後の課題としては複数の利用者間でのオブジェクトの共有があげられる．それぞれの利用者で開発されたオブジェクトを共有することができればさらに広い範囲の WWW 情報統合が可能になる．また WWW情報源の問題点とし ては内容や構造が頻繁に更新されることがあげられる．WWW 情報源からの情報抽出がハード コーデ ィングなど の方法を用いていれば，構造の変更により正し く情報抽出できないようなことも生じる．したがって情報源の変更に応じて迅速にオブジェクトを再配布する仕組みが必要である．現在，オブジェクトは Java のクラスとし て実装されているが，オブジェクトの共有に関しては Castanet[9] のようなプッシュ技術を用いて配布を行うことが有効であると考えられる．

謝辞
本研究の一部は文部省科学研究補助金特定研究領域 A(1)「ゲノムサイエンス」（ 課題番号 08283103 ）によるものである．

7

参考文献

[1] Robert B. Doorenbos, Oren Etzioni, and Daniel S. Weld, A Scalable Comparison-Shopping Agentfor the World-Wide Web, Proc. 1st International Conference on Autonomous Agents, 39{48 (1997).
ftp://ftp.cs.washington.edu/pub/etzioni/softbots/agents97.ps[2] Thure Etzold and Patrick Argos, SRS { an indexing and retrieval tool for at le data libraries,
CABIOS, 9(1):49{57 (1993).
[3] Oren Etzioni, Moving Up the Information Food Chain, AI Magazine, 18(2):11-18 (1997).
[4] W. Fujibuchi et al., DBGET/LinkDB: an Integrated Database Retrieval System, Paci c Symposium
on Biocomputing, 3:683{694 (1997).
[5] Shishir Gundavaram, CGI プログラミング，オライリー・ジャパン (1996).
[6] 橋田浩一，GDA 意味的修飾に基づく多用途の知的コンテンツ，人工知能学会誌，13(4):528{535 (1998).
[7] J. Y. Hsu and W. Yih, Template-based information mining from HTML documents; Proceedings of
14th National Conference on Arti cial Intelligence, 256{262 (1997)[8] 北村泰彦，野崎哲也，辰巳昭治，スクリプトに基づく WWW 情報統合支援システムとゲノムデ ータ
ベースへの応用，電子情報通信学会論文誌，J81-D-I(5):451-459 (1998).
[9] Laura Lemay, Castanet, プレンティスホール出版 (1997).
[10] 村田真，XML 入門，日本経済新聞社 (1998).
[11] 野田知哉，北村泰彦，辰巳昭治，WWW 情報資源の仮想オブジェクト化と統合を支援する GUI シス
テムの試作，情報処理学会第 56 回全国大会，4Z-5 (1998).
[12] E. Selberg and O. Etzioni, The MetaCrawler architecture for resource aggregation on the web, IEEE Expert, 12(1):11{14 (1997). http://www.cs.washington.edu/homes/speed/papers/ieee/ieeemetacrawler/ieee-metacrawler.html[13] J. Shakes, M. Langheinrich and O. Etzioni, Dynamic reference sifting: a case study inthe homepage domain, Proceedings of 6th International World Wide Web Conference (1997).
http://www.cs.washington.edu/homes/jshakes/ahoy paper/paper.html

8