(57)【要約】【課題】ハイパーテキスト構造を表す木構造の更新情報の作成処理の負荷を低減する。【解決手段】社内ネットワーク内に設けられた木構造情報収集装置１６は、前回更新タイミングにハイパーテキスト構造上に存在する文書及びリンクを示す前回文書テーブル２０４及び前回リンクテーブル２０６を持つ。更新タイミングになると、収集部１６２は社内ネットワークから文書及びリンクを収集し、この収集結果と前回のテーブル２０４及び２０６との比較から、前回と今回での各文書及びリンクの状態変化を示す収集後文書テーブル２１０及び収集後リンクテーブル２１２を作成する。差分データ作成部１６４は、ハイパーテキスト構造のリンクを幅優先探索する際に通るリンクとそのリンク先文書の状態変化をテーブル２１２及び２１０から求め、それら状態変化の組合せに対応する差分情報を差分情報判定テーブル２０８から検索して、木構造差分データ２２０に追加する。【選択図】図２
2005100331.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上の文書群が構成するハイパーテキスト構造の変化に応じて該ハイパーテキスト構造を表現する木構造データを更新するために、前記ハイパーテキスト構造の変化に対応する木構造データの変化を示す木構造差分データを作成する装置であって、
前記ハイパーテキスト構造の変化の前の時点で前記ハイパーテキスト構造上に存在する各文書が登録された更新前文書テーブルと、
前記ハイパーテキスト構造の変化の前の時点で前記ハイパーテキスト構造上に存在する各文書間リンクが登録された更新前リンクテーブルと、
前記更新前文書テーブル及び前記更新前リンクテーブルを参照しつつ前記変化の後の文書群を調査することにより、前記変化により前記ハイパーテキスト構造に対し追加及び削除された文書及びリンクを検出し、この検出結果を参照しつつ所定の先頭文書から順に前記変化の後のハイパーテキスト構造の文書間リンクを辿ることにより、前記木構造データの変化を示す木構造差分データを作成する差分処理部と、
を備える木構造差分データ作成装置。
【請求項２】
請求項１記載の木構造差分データ作成装置であって、前記差分処理部は、
前記更新前文書テーブルに登録された文書群、及びそれら各文書のリンク先の文書群を前記ネットワーク上から収集し、それら各文書が取得できたか否かに基づき、それら各文書が前記変化の前から存在するもの、前記変化により追加されたもの、及び前記変化により削除されたもの、のうちのいずれであるかを示す収集後文書テーブルを作成し、
前記ネットワーク上から収集した各文書に含まれる文書間リンク群と、前記更新前リンクテーブルに登録されている文書間リンク群との比較に基づき、各文書間リンクが前記変化の前から存在するもの、前記変化により追加されたもの、及び前記変化により削除されたもの、のうちのいずれであるかを示す収集後リンクテーブルを作成し、
前記先頭文書から順に前記変化の後のハイパーテキスト構造の文書間リンクを辿る際、該文書間リンク及びこの文書間リンクが示すリンク先の文書の状態を前記収集後文書テーブル及び前記収集後リンクテーブルから検索し、検索により得られた前記文書間リンクの状態と前記リンク先の文書の状態との組合せに基づき、前記リンク先の文書に関して前記木構造データに変更があるか否かを判定し、変更がある場合にその変更内容を示すデータを木構造差分データに追加する、
ことを特徴とする木構造差分データ作成装置。
【請求項３】
請求項２記載の木構造差分データ作成装置であって、前記差分処理部は、前記文書間リンクの状態と前記リンク先の文書の状態との組合せと、該組合せに対応する木構造データの変更の有無及び変更がある場合の変更内容と、を示す変更規則テーブルを有し、前記変化の後のハイパーテキスト構造の文書間リンクを辿る際に該変更規則テーブルを検索することを特徴とする木構造差分データ作成装置。
【請求項４】
請求項３記載の木構造差分データ作成装置であって、
前記更新前リンクテーブルは、前記各文書間リンクが前記先頭文書から該文書間リンクのリンク先の文書への最短パスに該当するか否かを示す最短パス情報を有し、
前記差分処理部は、複数の変更規則テーブルを有し、前記変化の後のハイパーテキスト構造の文書間リンクを辿っていくときにそれら各文書間リンクが前記先頭文書から該文書間リンクのリンク先の文書への最短パスに該当するかどうかを判定し、この判定結果と、前記更新前テーブルにおける該文書間リンクの最短パス情報との組合せに対応する変更規則テーブルを用いること特徴とする木構造差分データ作成装置。
【請求項５】
請求項２記載の木構造差分データ作成装置であって、前記差分処理部は、前記先頭文書から順に前記変化の後のハイパーテキスト構造の文書間リンクを辿る際、前記リンク先の文書に対応するノードを前記木構造データから削除する変更が必要と判断した場合、その変更内容を示すデータをその時点で木構造差分データに追加することはせず、残りのすべての文書間リンクを辿り終わった時点で前記リンク先の文書への文書間リンクがまったく見つからなかった場合に初めて、その変更内容を示すデータを木構造差分データに追加する、ことを特徴とする木構造差分データ作成装置。
【請求項６】
請求項２記載の木構造差分データ作成装置であって、
前記更新前リンクテーブルには、前記文書間リンクごとに、該文書間リンクが記述された文書中で該文書間リンクに対応づけて記述されたアンカーテキストが登録されると共に、
前記差分処理部は、前記ネットワーク上から収集した各文書に含まれる各文書間リンクに付されたアンカーテキストを検出し、該アンカーテキストを該文書間リンクに対応づけて前記収集後リンクテーブルに登録すると共に、前記更新前リンクテーブルと前記収集後リンクテーブルとの間で同一の文書間リンクに対するアンカーテキストが異なる場合、該文書間リンクのアンカーテキストが前記収集後リンクテーブルに示されたアンカーテキストに変更された旨を示すデータを前記木構造差分データに追加する、
ことを特徴とする木構造差分データ作成装置。
【請求項７】
ネットワーク上の文書群が構成するハイパーテキスト構造の変化に応じて該ハイパーテキスト構造を表現する木構造データを更新するために、コンピュータを用いて、前記ハイパーテキスト構造の変化に対応する木構造データの変化を示す木構造差分データを作成する方法であって、
前記ハイパーテキスト構造の変化の前の時点で前記ハイパーテキスト構造上に存在する各文書が登録された更新前文書テーブルと、前記ハイパーテキスト構造の変化の前の時点で前記ハイパーテキスト構造上に存在する各文書間リンクが登録された更新前リンクテーブルと、を用意し、
前記更新前文書テーブル及び前記更新前リンクテーブルを参照しつつ前記変化の後の文書群を調査することにより、前記変化により前記ハイパーテキスト構造に対し追加及び削除された文書及びリンクを検出し、
この検出結果を参照しつつ所定の先頭文書から順に前記変化の後のハイパーテキスト構造の文書間リンクを辿ることにより、前記木構造データの変化を示す木構造差分データを作成する、
木構造差分データ作成方法。
【請求項８】
ネットワーク上の文書群が構成するハイパーテキスト構造の変化に応じて該ハイパーテキスト構造を表現する木構造データを更新するために、コンピュータシステムを、前記ハイパーテキスト構造の変化に対応する木構造データの変化を示す木構造差分データを作成する装置として機能させるためのプログラムであって、該コンピュータシステムを、
前記ハイパーテキスト構造の変化の前の時点で前記ハイパーテキスト構造上に存在する各文書が登録された更新前文書テーブル、
前記ハイパーテキスト構造の変化の前の時点で前記ハイパーテキスト構造上に存在する各文書間リンクが登録された更新前リンクテーブル、
前記更新前文書テーブル及び前記更新前リンクテーブルを参照しつつ前記変化の後の文書群を調査することにより、前記変化により前記ハイパーテキスト構造に対し追加及び削除された文書及びリンクを検出し、この検出結果を参照しつつ所定の先頭文書から順に前記変化の後のハイパーテキスト構造の文書間リンクを辿ることにより、前記木構造データの変化を示す木構造差分データを作成する差分処理部、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハイパーテキスト構造をなす文書群の関係を木構造で表現するための装置に関し、特にハイパーテキスト構造の更新による木構造の変化を示す差分データの作成に関する。
【背景技術】
【０００２】
ＷＷＷ（ワールド・ワイド・ウェブ）上の文書群は、文書をノードとし、文書間のリンクをアークとするハイパーテキスト構造（ハイパーリンク構造とも呼ばれる）をなしている。このハイパーテキスト構造は、リンクにより任意の文書を容易に結びつけることができるという利点があるが、基本的にネットワーク構造であるため、文書数が増えて文書間の関係が複雑になると、人間が文書間の関係を把握することが困難となる。
【０００３】
これに対し、ハイパーテキスト構造を木（ツリー）構造に簡素化して表示する方法が従来より用いられている。ハイパーテキスト構造を木構造に変換するには、先頭文書から順に文書中に記述されるリンクを辿り、リンク先の文書を見つけるとそれをリンク元の文書の子ノードとして木構造に組み込む、という処理を繰り返せばよい。
【０００４】
このような木構造表示の１つとして特許文献１に示されるものがある。この方法では、ハイパーテキスト構造において１つのノード（仮に「Ａ」とする）に対して複数のノードからリンクが張られている場合、これを木構造に変換する際には、それら複数のノードのうちの１つを選び、ノードＡをその選んだノードの子として配置し、ノードＡへとリンクしている他のノードには、ノードＡを示す参照用のノード（ショートカット・ノードともいう）を子として配置する。この処理では、ハイパーテキスト構造のリンクをたどっていく際、最初にノードＡに到達した時のリンク元ノードを木構造上での実ノードＡの親とする。参照用のノードは、木構造を構成する実ノードとは異なる表示をする。これら参照用のノードは実ノードＡと同じ文書を指すものであるが、木構造上での関係は実ノードＡに代表して示すので、参照用のノードは子ノードを持たない。
【０００５】
また、アドビシステムズ社のウェブサイト管理ツールである「GoLive」は、ＷＷＷ上で始点文書を指定すると、その文書から順にリンクをたどって行くことでハイパーテキスト構造を調べ、そのハイパーテキスト構造中の１文書を指定すると、そのハイパーテキスト構造からその文書を根ノードとする木構造を作成して表示する機能を備えている。
【０００６】
さて、ＷＷＷ上ではウェブページの生成、消滅、内容の更新が頻繁に行われている。これらによりウェブページ群がなすハイパーテキスト構造が変化するため、これに対応する木構造の情報も更新する必要がある。このような木構造の更新は、再度リンクを辿ってウェブページ群を巡回すればよい。
【０００７】
ところで、このように作成・更新した木構造の情報を複数の装置で共有したい場合がある。このような場合、ある装置が作成・更新した木構造の情報を他の装置に送信すればよいが、木構造を構成する文書の数が多い場合、送信すべき木構造のデータ量は膨大なものになる。このような問題に対し、特許文献２には、送信側の装置が、前回作成した木構造と今回作成した木構造の差分情報を作成し、受信側の装置に送信するシステムが開示されている。
【０００８】
この特許文献２の方法は、送信データ量を低減するという点で有効であるが、次のような問題がある。すなわち、特許文献２の方法では、送信側装置が差分情報を作成するのに、前回作成した木構造と今回新たに作成した木構造との差分を抽出する処理を行っている。この処理のためには、第１に、前回作成した木構造全体を示す膨大なデータを保持しておかねばならないという問題がある。また第２に、この処理では、今回木構造を作成する際と、作成した木構造を前回の木構造と比較する際と、の合計２回、今回の木構造を辿らなければならないので、計算処理の負荷が大きい。
【０００９】
【特許文献１】特開平６−３５６５７号公報
【特許文献２】特開２００１−６７２６０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
本発明は、文書群が構成するハイパーテキスト構造の変化に応じ、そのハイパーテキスト構造を表現する木構造データの差分を効率よく作成するための装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明に係る装置は、ネットワーク上の文書群が構成するハイパーテキスト構造の変化に応じて該ハイパーテキスト構造を表現する木構造データを更新するために、前記ハイパーテキスト構造の変化に対応する木構造データの変化を示す木構造差分データを作成する装置であって、前記ハイパーテキスト構造の変化の前の時点で前記ハイパーテキスト構造上に存在する各文書が登録された更新前文書テーブルと、前記ハイパーテキスト構造の変化の前の時点で前記ハイパーテキスト構造上に存在する各文書間リンクが登録された更新前リンクテーブルと、前記更新前文書テーブル及び前記更新前リンクテーブルを参照しつつ前記変化の後の文書群を調査することにより、前記変化により前記ハイパーテキスト構造に対し追加及び削除された文書及びリンクを検出し、この検出結果を参照しつつ所定の先頭文書から順に前記変化の後のハイパーテキスト構造の文書間リンクを辿ることにより、前記木構造データの変化を示す木構造差分データを作成する差分処理部とを備える。
【００１２】
本発明の好適な態様では、前記差分処理部は、前記更新前文書テーブルに登録された文書群、及びそれら各文書のリンク先の文書群を前記ネットワーク上から収集し、それら各文書が取得できたか否かに基づき、それら各文書が前記変化の前から存在するもの、前記変化により追加されたもの、及び前記変化により削除されたもの、のうちのいずれであるかを示す収集後文書テーブルを作成し、前記ネットワーク上から収集した各文書に含まれるリンク群と、前記更新前リンクテーブルに登録されているリンク群との比較に基づき、各リンクが前記変化の前から存在するもの、前記変化により追加されたもの、及び前記変化により削除されたもの、のうちのいずれであるかを示す収集後リンクテーブルを作成し、前記先頭文書から順に前記変化の後のハイパーテキスト構造の文書間リンクを辿る際、該文書間リンク及びこの文書間リンクが示すリンク先の文書の状態を前記収集後文書テーブル及び前記収集後リンクテーブルから検索し、検索により得られた前記文書間リンクの状態と前記リンク先の文書の状態との組合せに基づき、前記リンク先の文書に関して前記木構造データに変更があるか否かを判定し、変更がある場合にその変更内容を示すデータを木構造差分データに追加する。-
【００１３】
更に好適な態様では、前記差分処理部は、前記文書間リンクの状態と前記リンク先の文書の状態との組合せと、該組合せに対応する木構造データの変更の有無及び変更がある場合の変更内容と、を示す変更規則テーブルを有し、前記変化の後のハイパーテキスト構造の文書間リンクを辿る際に該変更規則テーブルを検索する。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照して、本発明を実施するための最良の形態（以下「実施形態」と呼ぶ）を説明する。
【００１５】
図１は、本発明が適用されるシステムの全体構成の一例を示す図である。
【００１６】
このシステムにおいて、各企業企業Ａ，Ｂ及びＣは社内ネットワーク１４ａ，１４ｂ及び１４ｃをそれぞれ有しており、パーソナルコンピュータや各種サーバなどの多数のコンピュータがそれら社内ネットワーク１４ａ，１４ｂ及び１４ｃに接続されている。社内ネットワーク１４ａ，１４ｂ及び１４ｃには、それぞれファイアウォールが設けられており、インターネット１０上の装置から社内ネットワーク内に不正アクセスができないようになっている。社内ネットワーク１４ａ，１４ｂ及び１４ｃ上には多くの文書がウェブページとして存在している。それらウェブページ群は、リンク記述によって相互にリンクされ、ハイパーテキスト構造を形成している。各企業内のユーザは、パーソナルコンピュータ上のウェブブラウザを用い、インターネット１０上のサーバが公開している文書と共に、自社の社内ネットワーク１４ａ，１４ｂ又は１４ｃ上に存在する文書を閲覧することができる。
【００１７】
ここで、文書群が構成するハイパーテキスト構造は人間にとって理解が難しいので、これを人間に理解しやすい木構造に変換してユーザに提示することができれば、ユーザは所望の文書を探しやすくなる。インターネット１０に接続された木構造情報提供サーバ１２は、このような木構造情報の提供を行うサーバである。木構造情報提供サーバ１２は、例えばＡＳＰ（アプリケーションサービスプロバイダ）のサーバである。この場合、企業Ａ，Ｂ及びＣがＡＳＰの顧客である。木構造情報提供サーバ１２は、企業Ａ，Ｂ及びＣに対し、各々の社内ネットワーク１４ａ，１４ｂ及び１４ｃ内の文書群のリンク関係を木構造で表した木構造データを提供する。
【００１８】
ここで、社内ネットワーク１４ａ，１４ｂ及び１４ｃ内では、随時文書の新規生成、削除、内容変更が行われており、これらに応じて文書群が構成するリンク構造（ハイパーテキスト構造）は変化する。このような状況で顧客企業内のユーザにできるかぎり最新の木構造データを提供するために、木構造情報サーバ１２は、各社内ネットワーク１４ａ，１４ｂ及び１４ｃ内の文書群の変化に応じて、該サーバ１２自身が保持している木構造データを更新する必要がある。
【００１９】
ところが、一般に各社内ネットワーク１４ａ，１４ｂ及び１４ｃはそれぞれファイアウォールで保護されているため、木構造情報提供サーバ１２がそれら社内ネットワーク１４ａ，１４ｂ及び１４ｃ上の文書（ウェブページ）を取得出来ない。
【００２０】
そこで、本実施形態では、各企業の社内ネットワーク１４ａ，１４ｂ及び１４ｃのファイアウォール内にそれぞれ木構造情報収集装置１６を設ける。木構造情報収集装置１６は、自社の社内ネットワーク１４ａ，１４ｂ又は１４ｃに存在する文書群を調査し、それら文書群が構成する木構造が前回調査時からどのように変わったかを示す差分データを作成し、木構造情報提供サーバ１２に送信する。これにより木構造情報提供サーバ１２は、ファイアウォール内の文書群がなす木構造についての差分データを得ることができる。
【００２１】
図２は、木構造情報提供サーバ１２及び木構造情報収集装置１６の機能モジュール構成の一例を示す図である。
【００２２】
木構造情報提供サーバ１２は、記憶装置１２２と、クライアント要求処理部１２６と、木構造更新部１２８を有している。記憶装置１２２には、各顧客企業の社内ネットワーク１４ａ，１４ｂ及び１４ｃ内の文書群が構成する木構造を示す木構造データ１２４が記憶されている。
【００２３】
クライアント要求処理部１２６は、インターネット１０上に接続されたクライアント装置１８（典型的には各顧客企業内のユーザのＰＣ）から木構造要求１８０を受け取り、その要求１８０に対応する木構造データ１８２を作成し、クライアント装置１８に提供する。ここで、記憶装置１２２内の木構造データ１２４は、全ての顧客企業の社内ネットワーク上の文書群やインターネット上に公開されている文書群が構成する木構造群を含んでいる。クライアント要求処理部１２６は、そのような大規模な木構造データ１２４の中から、木構造要求１８０を発したユーザが指示した木構造閲覧範囲、及び該ユーザの閲覧権限の範囲に属する木構造を抽出し、これを木構造データ１８２としてクライアント装置１８に送信する。
【００２４】
木構造更新部１２８は、記憶装置１２２内の木構造データ１２４を更新するための機能モジュールである。木構造更新部１２８は、各顧客企業の木構造情報収集装置１６から送られてくる木構造差分データ２２０に基づき、現在記憶装置１２２に保存されている木構造データ１２４を最新のハイパーテキスト構造を反映したものに更新する。
【００２５】
各顧客企業内に設けられる木構造情報収集装置１６は、記憶装置２００と、収集部１６２と、差分データ作成部１６４とを有している。
【００２６】
記憶装置２００には、巡回リスト２０２，前回文書テーブル２０４，前回リンクテーブル２０６及び差分情報判定テーブル２０８が記憶される。巡回リスト２０２は、木構造の更新タイミングが来た時に、その更新のために取得すべき文書を示したリストである。前回文書テーブル２０４は、前回の木構造更新タイミングでの収集処理で求めた、社内ネットワーク上の各文書の存在・非存在の状態を示すテーブルである。前回リンクテーブル２０６は、前回の木構造更新タイミングでの収集処理で求めた、社内ネットワーク上の各文書間のリンクの存在・非存在の状態を示すテーブルである。差分情報判定テーブル２０８は、更新タイミングの前後での文書及びリンクの状態変化の組合せから、木構造の差分を求めるための規則を示したテーブルである。
【００２７】
また、記憶装置２００上には、収集部１６２による文書及びリンク情報の収集に応じ、収集後文書テーブル２１０及び収集後リンクテーブル２１２が作成される。収集後文書テーブル２１０は、収集部１６２の収集処理の結果判明した各文書の状態を示すテーブルである。また、収集後リンクテーブル２１２は、収集部１６２の収集処理の結果判明した各リンクの状態を示すテーブルである。これらのリスト及びテーブルの詳細な内容やその利用の仕方については、後に具体例を挙げて説明する。
【００２８】
収集部１６２は、木構造情報収集装置１６が設けられた社内ネットワーク１４上に存在する文書群や、それら文書に記述されたリンクを収集する機能モジュールである。この収集により、収集後文書テーブル２１０及び収集後リンクテーブル２１２が作成される。
【００２９】
差分データ作成部１６４は、収集部１６２による収集の結果である収集後文書テーブル２１０及び収集後リンクテーブル２１２と、記憶装置２００内に記憶された他の情報を利用して、木構造差分データ２２０を作成する機能モジュールである。
【００３０】
これら収集部１６２及び差分データ作成部１６４が行う処理の詳細は、後に具体例を挙げて説明する。
【００３１】
木構造情報収集装置１６は、所定の規則によって定まる木構造更新タイミングが到来する毎に、収集部１６２及び差分データ作成部１６４を動作させて木構造差分データ２２０を作成し、木構造情報提供サーバ１２に送信する。
【００３２】
次に、具体例を挙げて本実施形態のシステムの動作を説明する。
【００３３】
図３Ａは、ある社内ネットワーク内の文書群が、前回の木構造更新タイミングにおいて構成していたハイパーテキスト構造を示す図である。図３Ｂは同じ社内ネットワーク内の文書群が、今回の木構造更新タイミングにおいて構成しているハイパーテキスト構造を示す図である。図３Ａ及びＢにおいて、丸印で示したノード３００はハイパーテキスト構造を構成する個々の文書を示し、丸印の中に示した数字は当該文書に付与された文書ＩＤを示す。また、矢印で示したアーク３０２はそれら文書間のリンクを示す。矢印の根もとのノードがリンク元の文書を、矢印の先端（矢じり側）のノードがリンク先の文書を示す。
【００３４】
図３Ａにおいて、文書ＩＤ「７」のノードの枠線が点線で示されているのは、そのノードに対応する文書の実体データが社内ネットワーク上に存在しないことを意味する。すなわち、文書ＩＤ「３」の文書には、文書ＩＤ「７」の文書へのリンクが記述されているにもかかわらず、文書ＩＤ「７」の文書自体は存在していない。なお、以下では記述を簡明にするため、『文書ＩＤ「ｎ」（ｎは自然数）の文書』と記述する代わりに、単に『文書ｎ』と記述することとする。
【００３５】
図３Ａと図３Ｂを比較すれば、前回の更新タイミングと今回の更新タイミングとで、ハイパーテキスト構造に以下のような変化があることが分かる。
【００３６】
（１）文書２から文書４へのリンクが削除された
（２）文書４から文書１へのリンクが新たに生成された
（３）文書５の内容（コンテンツ）が更新された
（４）文書６が削除された（付随的に文書６から８へのリンクも削除）
（５）文書７が新たに生成された
（６）文書７から文書８へのリンクが新たに生成された。
【００３７】
大まかに言えば、木構造情報収集装置１６から木構造情報提供サーバ１２へは、このような変化を示す情報を木構造差分データ２２０として送信すればよい。
【００３８】
図３Ａや図３Ｂは説明のために作成した非常に簡単な例なので差分データを簡単に求めることができるが、実際の社内ネットワークでは、数千、数万、或いはそれ以上の文書がハイパーテキスト構造を構成しており、そのような膨大な文書群が構成する構造に対応する木構造の差分データを求めるのは容易ではない。そこで、本実施形態の木構造情報収集装置１６は、以下のような処理により、木構造差分データを効率的に作成する。
【００３９】
図４は、本実施形態のシステムにおける木構造データの更新処理の流れを示す図である。
【００４０】
この処理では、木構造データの更新タイミングが到来すると、まず社内ネットワーク内に設けられた木構造情報収集装置１６の収集部１６２が、巡回リスト２０２を参照して文書群の取得処理を実行する。そして収集部１６２は、その取得処理の結果と前回文書テーブル２０４と前回リンクテーブル２０６とを比較することにより、更新タイミングの前後での各文書及び各リンクの状態変化を示した収集後文書テーブル２１０及び収集後リンクテーブル２１２を作成する（Ｓ１０）。
【００４１】
図５は、巡回リスト２０２のデータ内容の一例を示す図である。図５に示すように、巡回リスト２０２には、木構造情報収集装置１６が設置された社内ネットワーク内でハイパーテキスト構造を構成する各文書毎に、その文書に付与した文書ＩＤとその文書のＵＲＬ(Uniform Resource Locator)とが登録されている。文書ＩＤは、社内ネットワーク上で一意なものでよいが、複数の社内ネットワークを含むシステム全体で一意なものとしてももちろんよい。巡回リスト２０２には、社内ネットワーク内でハイパーテキスト構造を構成する文書のうち、前回の木構造更新タイミングでの処理により、存在することが確認された文書（すなわち取得出来た文書）についての情報が記憶されている。なお、図５の例は、図３Ａに示したハイパーテキスト構造に対応しているので、文書ＩＤ「７」の文書に対応するエントリはない。もっとも、これはあくまで一例であり、この代わりに、取得出来なかった文書でも、その文書を指すリンクが他の文書に記述されていれば、これを巡回リスト２０２に登録しておくこともできる。
【００４２】
Ｓ１０では、まず収集部１６２は、ＨＴＴＰ（ハイパーテキスト・トランスファ・プロトコル）のＧＥＴメソッドを用い、巡回リスト２０２に登録されている各文書のＵＲＬに示される文書の取得を試みる。また、この取得処理により取得した文書の内容に、巡回リスト２０２に含まれていないＵＲＬを示すリンク記述があれば、収集部１６２はそのリンク記述が示す文書に対し新たな文書ＩＤを付与して巡回リスト２０２に登録し、その文書の取得を試みる。この取得要求に対し、取得対象の文書のＵＲＬが示すサーバは、要求されたＵＲＬが示す文書を持っていればその文書を木構造情報収集装置１６へと送信し、そのＵＲＬが示す文書を持っていなければ「その文書が存在しない」旨を示すデータを木構造情報収集装置１６へと送信する。なお、この取得処理では、例えばIf-modified-sinceヘッダを用いることで、取得対象の文書が更新されている場合にのみ、その文書の実体データが木構造情報収集装置１６に送られるようにすることもできる。この場合、取得対象の文書が更新されていない場合は、更新がない旨を示すデータが木構造情報収集装置１６に返される。このような取得処理により、取得しようとした各文書が存在するかしないかが分かる。また、If-modified-sinceヘッダを用いれば、存在する文書の内容が前回取得時から更新されているか否かを判別することもできる。なお、木構造の差分を求めるのみならば、文書の内容が更新されているか否かまでは調べる必要はないが、If-modified-sinceヘッダを用いれば既に木構造情報収集装置１６に取得済みの文書を再度取得することを避けることができるというメリットがある。
【００４３】
収集部１６２は、この取得結果と前回文書テーブル２０４とを比較することにより、各文書の状態が前回の更新タイミングからどのように変化したか求め、その状態変化を示す収集後文書テーブル２１０を作成する。
【００４４】
図６Ａは、図３Ａのハイパーテキスト構造に対応した前回文書テーブル２０４のデータ内容の一例を示す図である。この図では、各文書ごとに、その文書ＩＤとその文書の状態が登録されている。登録される文書の「状態」は、「存在」か「非存在」のいずれかである。すなわち、前回文書テーブル２０４には、前回の木構造更新タイミングの時点で、各文書ＩＤに対応する文書がネットワーク上に存在していたか否かが登録される。なお、図６Ａの例は、「非存在」の文書は前回文書テーブル２０４に登録しないという方式に従ったものであるため、文書ＩＤ「７」のエントリは存在しない。しかしながら、これは一例であり、この代わりに、いずれかの文書のリンク記述に示される文書であれば前回文書テーブル２０４に登録するという方式も考えられる。この場合、前回文書テーブル２０４には、文書ＩＤ「７」が「非存在」であるとして登録されることになる。
【００４５】
図６Ｂは、図３Ａのハイパーテキスト構造が図３Ｂの構造へと変化した場合に、収集部１６２により作成される収集後文書テーブル２１０のデータ内容の一例を示す図である。収集後文書テーブル２１０には、収集の前後での各文書の状態の変化が示される。収集前の各文書の状態は前回文書テーブル２０４に示されており、収集後の文書の状態は収集部１６２による文書取得処理により求められる。収集前後の文書状態の変化には、（１）「新規」（収集前になかった文書が収集時に新たに検出された）、（２）「削除」（収集前に存在した文書が収集時には存在しなかった）、（３）「更新」（収集前に存在した文書の内容が更新されたことが収集時に分かった）、の３種類がある。また、文字通りの意味では「変化」とは言えないが、収集前後の文書の状態同士の関係を示す広義の「変化」として、（４）「存在」（収集前に存在した文書が内容更新されないまま収集時にも存在している）、及び（５）「非存在」（収集前になかった文書が収集時にも存在しなかった）がある。なお、収集前に存在せず、且つ収集時にも存在しない文書（「非存在」）は、木構造上には現れないので、テーブル２０４に登録しなくてもよい。また、木構造の変化のみを知りたい場合は、「更新」は「存在」と同様に扱えばよい。
【００４６】
収集部１６２は、前回文書テーブル２０２と今回の取得処理結果とをつき合わせることで、取得を試みた各文書の状態変化を求め、収集後文書テーブル２１０に登録する。図６Ｂの例では、例えば文書５は「更新」、文書６は「削除」、文書７は「新規」となっている。
【００４７】
収集部１６２は、以上の処理を、巡回リスト２０２に登録された全てのＵＲＬ、及びこの処理で新たに検出した全てのＵＲＬの取得結果が判明するまで繰り返すことで、収集後文書テーブル２１０を完成させる。
【００４８】
またＳ１０では、収集部１６２は、今回の更新タイミングの前後でのリンクの状態変化を検出する。更新タイミング到来前のリンク群の状態は前回リンクテーブル２０６に示されている。
【００４９】
図７Ａは前回リンクテーブル２０６のデータ内容の一例を示す図である。この図に示すように、リンクテーブル２０６で１つのリンクを示すエントリは、リンク元ＩＤ、リンク先ＩＤ、状態、及び最短パスフラグ、の４つの項目から構成される。リンク元ＩＤは、当該リンクのリンク元文書（すなわちそのリンクの記述を含んでいる文書）の文書ＩＤである。リンク先ＩＤは、当該リンクのリンク先文書（すなわちそのリンクが指す文書）の文書ＩＤである。
【００５０】
状態は、当該リンクが存在しているか否かを示す情報である。前回更新タイミングで取得した文書群のいずれかにリンク記述があれば、そのリンク記述が示すリンクの状態は「存在」となる。図７Ａの例では、存在しないリンクをテーブルに登録しない方式をとっているため、全てのリンクの状態が「存在」となっている。
【００５１】
そして、最短パスフラグは、当該リンクが木構造作成時に当該リンク先の文書に到達する最短パスであるか否かを示すフラグである。本実施形態では、木構造の差分データを作成するために、更新タイミングにおけるハイパーテキスト構造を、木構造作成の際のリンク探索の規則に従って探索していく。一般に、木構造作成の際の探索規則の一つとして幅優先探索規則が知られている。ここで、本実施形態における幅優先探索による木構造の作成処理を説明する。この処理では、木構造の作成のために、収集後文書テーブル２１０に示される各文書の情報と、収集後リンクテーブル２１２に示されるそれら文書間のリンクの情報とを調査する。
【００５２】
ハイパーテキスト構造の幅優先探索を行うために、リンクを格納するキューを一つと、各文書に対応する探索フラグを用意する。木構造作成の開始時に、すべての文書の探索フラグをリセットし、所定の先頭文書（例えば企業Webページのトップページ）から探索を開始する。すなわち、まずその先頭文書の探索フラグを立て、先頭文書に示される１以上のリンクを所定の順序（例えばその文書の記述中での各リンクの出現順序）でキューに追加したものを初期状態とする。そして、「キューから一つリンクを取得し、そのリンク先の文書へ探索を行い、この探索により到達した文書（「探索文書」と呼ぶ）の探索フラグを立て、探索文書に示されるリンクをキューに追加する」ことを、キューが空になるまで繰り返す。探索の過程で、既に一度探索した文書に再度到達することもあるが、このときは探索フラグは既に立てられており、その探索フラグの状態はこのまま変化させない。ここで、この探索においてリンクを取得してくる収集後文書テーブル２１０や収集後リンクテーブル２１２には、現時点ではＷＷＷ上には存在しない文書やリンクも入っているので、このような不在の文書やリンクは木構造に組み込まないようにする必要がある。このため、収集後文書テーブル２１０に示されるその探索文書の状態変化が「削除」もしくは「非存在」である場合にはその探索文書に示されるリンクをキューに追加しないようにする。また、キューから取り出したリンクの状態変化（これは収集後リンクテーブル２１２に示される。詳細は後述）が「削除」もしくは「非存在」である場合にはリンク先の文書の探索フラグは立てず、探索文書に示されるリンクをキューに追加することも行わないこととする。この探索の過程で辿った文書及びリンクの系列は木構造を示す。但し木構造では、１つのノード（「注目ノード」と呼ぶ）が複数の親ノードの子となることはできないので、木構造の生成では、ある注目ノード（文書）は、その注目ノードに最初に到達した時（つまり注目ノードの探索フラグが立っていない時）に辿ったリンクのリンク元文書のノードの子とする。そして、次以降、別のノードから注目ノードに到達した場合（つまり注目ノードの探索フラグが立っている場合）は、その「別のノード」には、その注目ノードを指す参照ノード（ショートカット・ノード）を子として付加する。これに対し、最初に注目ノードに到達した時のリンクに対応する子ノードは、実ノードとして取り扱う。リンク先の文書を参照ノードとした場合、そのリンク先文書に記述されたリンクの探索は中止する（つまり文書に示されているリンクをキューに追加しない）。これは、リンク先文書に記述されたリンクから先は、そのリンク先文書に対応する実ノードのルートで探索できるため、重複探索を避けているからである。なお、木構造データを表示する場合、実ノードと参照ノードを異なる表示形態で表示することができる。
【００５３】
最短パスフラグは、このようなハイパーテキスト構造の探索において、「リンク先ＩＤ」が示す文書に最も早く到達したか、否かを示す。以上の説明から分かるように、最短パスフラグが「○」、すなわち「最短パスである」ことを示す場合は、木構造データにおいて、リンク先ＩＤのノードはリンク元ＩＤのノードの子であり、かつ実ノードとなる。これに対し、最短パスフラグが「×」、すなわち「最短パスでない」ことを示す場合は、木構造データにおいて、リンク先ＩＤのノードはリンク元ＩＤのノードの子ではあるが、参照ノードであることを意味する。
【００５４】
図３Ａのネットワーク構造では、文書４へは文書２と文書５の両方の経路から到達できるが、文書１を起点に探索すると文書２を通る経路の方が先に到達することができるので、図７Ａのテーブルでは、文書２から４へのリンクが最短パスであり、文書５から４へのリンクが最短パスでない、となっている。
【００５５】
なお、図３Ａのネットワーク構造では、文書７は存在しない。存在しない文書については、その文書に到達するリンクそれぞれについて最短パスかどうかを決定することができないので、最短パスフラグは「不明」としている。
【００５６】
以上、更新タイミング到来前のリンク群の状態を示す前回リンクテーブル２０６について説明した。収集部１６２は、このテーブル２０６と、今回収集した各文書に記述されたリンク記述とをつき合わせることで、収集の前後での各リンクの状態変化を求め、この状態変化を示した収集後リンクテーブル２１２を作成する。
【００５７】
リンクの状態変化には、（１）「新規」、（２）「削除」、（３）「存在」、（４）「非存在」の４種がある。それら４種の状態変化が示す意味は、上述した文書の状態変化の場合と同じである。
【００５８】
図３Ａから図３Ｂへのハイパーテキスト構造の変化に対応する、収集後リンクテーブル２１２の例を図７Ｂに示す。収集後リンクテーブル２１２は、前回リンクテーブル２０６に登録された各リンク、及び今回の収集により新たに検出された各リンクについて、それぞれエントリを有する。１つのエントリは、リンクを特定するリンク元ＩＤ及びリンク先ＩＤのペア、当該リンクの状態変化、及び最短パスフラグを含んでいる。リンクの状態変化は、前回リンクテーブル２０６と、今回の収集により判明した各リンクの有無との比較により、求めることができる。例えば、文書２から４へのリンクは、前回リンクテーブル２０６では「存在」するのに、図３Ｂのハイパーテキスト構造の探索時には検出出来ないので、状態変化が「削除」となる。また、文書４から１へのリンクは、前回リンクテーブル２０６では存在しないのに、図３Ｂのハイパーテキスト構造の探索時には検出されるので、状態変化が「新規」となる。また、最短パスフラグは、今回「新規」に検出されたリンクについては「不明」とし、その他の状態変化（「存在」及び「削除」）に該当するリンクについては、前回リンクテーブル２０６の最短パスフラグの値を引き継ぐ。
【００５９】
以上、収集部１６２による収集処理（Ｓ１０）について説明した。この収集処理が完了し、収集後文書テーブル２１０及び収集後リンクテーブル２１２が完成すると、次に差分データ作成部１６４による処理が実行される（再び図４参照）。
【００６０】
すなわち、差分データ作成部１６４は、収集後文書テーブル２１０及び収集後リンクテーブル２１２と差分情報判定テーブル２０８とを用いて、木構造の差分データを作成する（Ｓ１２）。この作成処理では、差分データ作成部１６４が、ハイパーテキスト構造上のリンクを、所定の先頭文書から順に、木構造作成のための幅優先探索の順序に従って辿ることにより、該ハイパーテキスト構造上の文書を巡回していく。収集後リンクテーブル２１２には、今回の更新タイミングにおいて存在するリンクが全て網羅されているので、このテーブル２１２を参照することでその探索を実行できる。差分データ作成部１６４は、その幅方向優先探索の際に新たにリンクを見つける（このリンクを注目リンクと呼ぶ）毎に、その注目リンクの状態変化とその注目リンクが指すリンク先文書の状態変化を収集後文書テーブル２１０及び収集後リンクテーブル２１２からそれぞれ求める。そして、その注目リンクとリンク先文書の状態変化の組合せを判定テーブル２０８にて検索し、この検索により差分情報が求められれば、それを木構造差分データに追加する。Ｓ１２では、このリンクの探索、判定テーブル２０８の検索、及びその検索結果に基づく差分情報の追加を、ハイパーテキスト構造の全てのリンクを辿り終えるまで繰り返す。
【００６１】
図８Ａ〜Ｄに、差分情報判定テーブル２０８の具体例を示す。これら４つのテーブルでは、注目リンクの状態変化と該注目リンクが示すリンク先文書の状態変化との組合せが示すセルには、その組合せに対応する木構造の変化の内容が登録されている。これらのテーブルにおいて斜線が示されたセルは、そのセルが示す組合せが起こりえないか、又はそのセルが示す組合せについては木構造に変化がないか、のいずれかであることを示している。
【００６２】
また、これら４つのテーブルは、幅優先探索を開始する前と後との間での注目リンクの最短パス状態の変化に応じて、用意したものである。ここで、探索を開始する前の各リンクの最短パス状態は、収集後リンクテーブル２１２に「最短パスフラグ」として示されている。また、探索後のリンクの状態は、リンク先文書の探索フラグにて決定することができる。すなわち、注目リンクを辿って到達したリンク先の文書の探索フラグが立っていなければ（これは探索の過程でその文書に初めて到達したことを示す）、その注目リンクは最短パスであり、探索フラグが立っていれば最短パスではない。したがって、ある注目リンクを辿った時点では、その注目リンクの状態変化は確定している。この状態変化に応じて、図８Ａ〜Ｄの中から適切なテーブルを選択し、利用する。
【００６３】
図８Ａは、注目リンクが幅優先探索開始前（以下、簡単のため「過去」という）に最短パスで、今回の幅優先探索が完了した時点（以下、簡単のため「現在」という）でも最短パスである場合の、差分情報判定テーブル２０８Ａの一例を示している。
【００６４】
このテーブル２０８Ａでは、文書の状態変化が「削除」でリンクの状態変化が「削除」又は「存在」である場合、木構造の差分情報は「削除」となる。この差分情報の「削除」は、木構造において、注目リンクのリンク先文書を示す実ノードを、該リンクのリンク元文書を示すノードの子から「削除」することを意味している。すなわちこの場合、注目リンクを辿って到達したリンク先文書は、前回更新タイミングにはリンク元文書の子の実ノードとして存在したものであるが、今回の更新タイミングではその文書自体が削除されていることが判明したので、その実ノードを削除するというわけである。この場合、注目リンクのリンク元を親とするリンク先の実ノードが削除された旨を示す差分情報を木構造差分データ２２０に追加する。図９に示す木構造差分データ２２０のうち、末尾の文書６に対応するエントリが、この差分情報の一例である。ここで、リンクの状態変化が「存在」である場合は、更新後もハイパーテキスト上の注目リンクだけは残る（ただしこれは木構造とは関係がない）。
【００６５】
また、文書の状態変化が「更新」でリンクの状態変化が「存在」の場合は、差分情報が「更新」となる。すなわち、リンクの状態変化が「存在」で文書の状態変化が「更新」ということは、探索前も後も「最短パス」であることを考慮すると、当該文書は前回の更新タイミングでも今回の更新タイミングでもリンク元文書の子の実ノードであり、且つその文書の内容が更新されたことを意味する。したがって、木構造差分データ２２０には、木構造において、注目リンクのリンク元文書の子であるとリンク先文書が内容更新された旨を示す差分情報を追加する。図９の木構造差分データ２２０のうち、先頭の文書５に対応するエントリが、この差分情報の一例である。なお、純粋に木構造の変化だけ分かればよい（すなわち文書内容の更新まではクライアント装置１８に渡す木構造データ１８２に表現しない）場合は、この組合せに対しては木構造が変化無しとすればよい。
【００６６】
なお、リンクの状態変化が「新規」という状況は、リンクが過去に最短パスであったことと矛盾するので、起こりえない。また、リンクの状態変化が「非存在」である場合は、過去も現在も注目リンクがないので、木構造上にその注目リンクに対応する親子関係は過去も現在も存在しないことになり、結局過去と現在とで変化がないことになる。したがって、この場合はその注目リンクについての情報は木構造差分データ２２０に組み込む必要がない。また、文書の状態変化が「非存在」の場合も、その文書自体が過去も現在も存在しないので、木構造でも過去も現在もその文書が存在しない。すなわち、結局木構造に変化はない。
【００６７】
また、文書及び注目リンクの状態変化が共に「存在」である場合は、該注目リンクが過去も現在も最短パスであるという状況下では、過去も現在も該リンクのリンク先文書がリンク元文書の子の実ノードであることを示すので、木構造上での変化は無い。
【００６８】
また、文書の状態変化が「新規」という状況は、リンクが過去に最短パスであったことと矛盾するので、起こりえない。
【００６９】
なお、注目リンクの状態変化が「削除」で、リンク先の文書の状態変化が「存在」又は「更新」の場合は、前回の更新タイミングでは該リンク先文書は木構造上でリンク元文書の子である実ノードとして存在していたが、今回のタイミングでは注目リンクが削除されたため、その親子関係がなくなっている。したがって、１つの考え方では、この差分情報テーブル２０８Ａでは、それら２つの組合せに対応する差分情報を「削除」とすればよい。しかし、この場合、木構造情報提供サーバ１２が木構造差分データ２２０を先頭から順に１差分情報ずつ処理していくタイプのものであった場合、この「削除」という差分情報を木構造差分データ２２０において該注目リンクの巡回順序の位置に組み込んでしまうと、木構造情報提供サーバ１２はその差分情報を読み取った時、その注目リンクが示すリンク先文書を示す実ノードを削除してしまうため、次のような問題がある。
【００７０】
すなわちこの場合、その実ノードの削除により、木構造におけるその実ノードの子孫のノード群も削除されてしまうことになる（木構造だから、このような扱いが一般的である）。しかし、その実ノード及びその子孫ノード（以下、これらを「子孫ノード」と総称する）のいずれかは、後で別の文書からリンクされていると判明することもある。このような場合、別文書からリンクされていると判明した子孫ノードについては親が変わるだけで他の属性は変わらない。またその子孫ノードの子孫については親も他の属性もいっさい変化がない。このような場合、もっとも簡潔には、その子孫ノードの新たな親を示す差分情報をサーバ１２に送ればよい。その子孫ノードの子孫については、親も他の属性も変化していないので、差分情報を送る必要はない。
【００７１】
ところが、いったん注目リンクのリンク先文書を示す実ノードを削除してしまうと、子孫ノードが別ノードの子であることが判明した場合、その実ノードを削除することを示す差分情報と、子孫ノードを新たに別ノードの子として「新規」に追加することを示す差分情報とをサーバ１２に送る必要が出てくる。またその子孫ノードの子孫についても、直接の親ノードに変化がなくても、いったん削除されてしまっているので、「新規」に追加することを示す差分情報を送る必要が出てくる。これでは、上述した簡潔な差分情報に比べ、データ量が大きくなる。親の情報以外の属性も差分情報に含める場合は、差分情報の量はさらに大きくなってしまう。
【００７２】
そこで、本実施形態では、図８Ａのケースでは、注目リンクの状態変化が「削除」で、そのリンク先の文書の状態変化が「更新」又は「存在」である場合は、その注目リンクを辿った時点では、リンク先文書の実ノードを「削除」する旨の差分情報を木構造差分データ２２０に組み込まない。この代わりにこの時点では、該リンク先文書の実ノードについて、削除される可能性がある旨を示すフラグをオンにして、残りの探索を続行する。残りの探索で、その実ノード又はその子孫を指すリンクが見つかれば、そのフラグをオフにし、そのリンクに応じた差分情報を作成する。これにより、上述の問題が回避される。また、探索を最後まで行った段階で、その実ノードが一度も巡回されなかった場合は、削除を示すフラグがオンのままなので、その実ノードを削除する旨の差分情報を作成し、木構造差分データ２２０に追加する。このように、リンクが削除されても文書自体が存在し続ける場合は、木構造上でその文書に対応するノードを最終的に削除するかどうかが、ハイパーテキスト構造の探索が終了して初めて決定されるので、無駄な差分情報の発生を低減し、木構造差分データ２２０のデータ量を小さくすることができる。
【００７３】
なお、以上は注目リンクの状態変化が「削除」で、そのリンク先の文書の状態変化が「更新」又は「存在」である場合の処理であったが、一般に実ノードを削除する旨の差分情報は、木構造差分データ２２０の末尾に組み込むようにすることで、木構造差分データ２２０のデータ量を小さくすることができる。
【００７４】
図８Ｂは、注目リンクが、過去には最短パスであったが、現在は最短パスでないと判明した場合の、差分情報判定テーブル２０８Ｂの一例を示している。
【００７５】
このテーブル２０８Ｂにおいて、リンクの状態変化が「新規」及び「非存在」の場合に該当する各縦列、及び文書の状態変化が「新規」及び「非存在」の場合に該当する各横行の内容は、上述のテーブル２０８Ａの場合と同じ考え方である。
【００７６】
また、文書の状態変化が「削除」でリンクの状態変化が「削除」又は「存在」である場合、木構造の差分情報は「削除」となる点も、テーブル２０８Ａの場合と同様の考え方である。
【００７７】
また注目リンクの状態変化が「削除」で、リンク先文書の状態変化が「更新」又は「存在」の場合に、ノードの状態を変化させないのも、テーブル２０８Ａの場合と同様の考え方である。
【００７８】
これに対し、注目リンクの状態変化が「存在」で、リンク先文書の状態変化が「更新」又は「存在」となるセルは、テーブル２０８Ａの場合とは内容が異なる。このような状態変化の組合せは、そのリンク先文書は過去の時点では木構造上での実ノードであり、それが現時点では参照ノードに変わったことを意味する。したがって、これらの組合せでは、差分情報を「新規」且つ「最短パスでない」とする。この差分情報は、木構造において、注目リンクのリンク元の文書のノードに、リンク先の文書を示す参照（ショートカット）ノードを子として追加することを意味する。
【００７９】
図８Ｃは、注目リンクが、過去には最短パスでなかったが、現在は最短パスであると判明した場合の、差分情報判定テーブル２０８Ｃの一例を示している。
【００８０】
このテーブル２０８Ｃにおいて、リンクの状態変化が「非存在」の場合に該当する縦列、及び文書の状態変化が「非存在」の場合に該当する横行の内容は、上述のテーブル２０８Ａの場合と同じ考え方である。
【００８１】
リンクの状態変化が「新規」でかつ文書の状態変化が「新規」の場合は、文書もリンクも新規に出現したものである。ここで、そのリンクは最短パスなので、その組合せに対応する差分情報は、「新規」かつ「最短パスである」とする。この差分情報は、木構造において、注目リンクのリンク元の文書のノードに、リンク先の文書を示す実ノードを子として追加することを意味する。図９の例では、２行目の文書７に対応するエントリが、この場合の差分情報に該当する。
【００８２】
リンクの状態変化が「新規」でかつ文書の状態変化が「更新」及び「存在」の場合は、過去にその文書は存在していたがそのリンクは最短パスでなかった、すなわちその文書は実ノードではなかったところが、現在は最短パスになったのでその文書は実ノードになったことを意味する。このような組合せに対応するセルには「更新」かつ「最短パスである」の旨を示す情報が登録されている。図９に示す木構造差分データ２２０のうち、６行目の文書８に対応するエントリが、この情報から作成される差分情報の一例である。この差分情報は、文書８は実ノードであること、および文書７の子となるように「更新」されたことを示しているので、サーバ１２は、木構造において文書８の実ノードを文書７を示す実ノードの子とする。
【００８３】
注目リンクの状態変化が「新規」でリンク先文書の状態変化が「削除」となる組合せでは、木構造に変化はないので差分情報を作成しなくてよい。
【００８４】
注目リンクの状態変化が「削除」であり、かつリンク先文書の状態変化が「更新」、「削除」、「存在」のいずれかである場合に対応するセルの内容は「削除」となる。この場合、過去に存在したリンク先文書を示すノードを削除する旨の差分情報が作成される。
【００８５】
注目リンクの状態変化が「存在」であり、かつリンク先文書の状態変化が「新規」である組合せに対応するセルの内容は「新規」かつ「最短パスである」となる。この場合、リンク先文書を示す実ノードを、リンク元文書の子として追加する旨の差分情報が作成される。
【００８６】
注目リンクの状態変化が「存在」であり、かつリンク先文書の状態変化が「更新」又は「存在」のいずれかである場合に対応するセルの内容は「本体更新」かつ「ショートカット削除」かつ「最短パスである」である。「本体更新」とは、過去には注目リンクのリンク先ノードの親が、リンク元ノード以外のノードであったものを、リンク元ノードへと更新することを意味する。また「ショートカット削除」とは、その更新に伴い、そのリンク元ノードの子として存在したリンク先ノードの参照ノード（ショートカット）を削除することを意味する。したがって、この場合、図９の例では、４及び５行目に示す、文書４及び文書４のショートカットに対応する２つのエントリが、差分情報として作成されることになる。
【００８７】
注目リンクの状態変化が「存在」であり、かつリンク先文書の状態変化が「削除」である組合せに対応するセルの内容は「削除」となる。この場合、リンク先文書を示す参照ノードを、リンク元文書の子から削除する旨の差分情報が作成される。
【００８８】
図８Ｄは、注目リンクが、過去には最短パスでなく、現在も最短パスでないと判明した場合の、差分情報判定テーブル２０８Ｄの一例を示している。
【００８９】
このテーブル２０８Ｄにおいて、リンクの状態変化が「非存在」の場合に該当する縦列、及び文書の状態変化が「非存在」の場合に該当する横行の内容は、上述のテーブル２０８Ａの場合と同じ考え方である。
【００９０】
注目リンクの状態変化が「新規」でかつリンク先文書の状態変化が「新規」、「更新」、又は「存在」のいずれかである場合、過去では注目リンクが存在しなかったので、木構造中にはそのリンク先文書に対応するノードもなかった。これに対し、現在ではその注目リンクが新規に生成され、かつ現在はリンク先文書の存在しているので、木構造に新たなノードを加えることになる。ただし、その注目リンクは最短パスではないので、新規追加するノードは参照ノードである。このようなことから、それらの組合せに対応するセルの内容は、「新規」かつ「最短パスでない」となる。図９の例では、３行目の文書１のショートカットに対応するエントリが、このような差分情報の一例となる。
【００９１】
注目リンクの状態変化が「新規」でリンク先文書の状態変化が「削除」となる組合せでは、木構造に変化はないので差分情報を作成しなくてよい。
【００９２】
注目リンクの状態変化が「削除」であり、かつリンク先文書の状態変化が「更新」、「削除」、「存在」のいずれかである場合に対応するセルの内容は「削除」となる。この場合、注目リンク自身が削除されるのでそのリンクのリンク先に該当する木構造のノードは消滅する。したがって、過去に存在したリンク先文書を示すノードを削除する旨の差分情報が作成される。
【００９３】
注目リンクの状態変化が「存在」であり、かつリンク先文書の状態変化が「新規」である組合せに対応するセルの内容は「新規」となる。この場合、リンク先文書を示す参照ノードを、リンク元文書の子として追加する旨の差分情報が作成される。
【００９４】
注目リンクの状態変化が「存在」であり、かつリンク先文書の状態変化が「更新」又は「存在」のいずれかである場合は、該リンク先文書は過去には参照ノード（過去最短パスでないから）であり、現在も参照ノードのまま（現在も最短パスでないから）であるので、木構造には変化が起こらない。このため、差分情報を作成する必要がない。
【００９５】
注目リンクの状態変化が「存在」であり、かつリンク先文書の状態変化が「削除」である組合せに対応するセルの内容は「削除」となる。この場合、リンク先文書を示す実ノードを、リンク元文書の子として追加する旨の差分情報が作成される。
【００９６】
以上に説明した差分情報判定テーブル２０８Ａ〜Ｄと図７Ｂの収集後リンクテーブル２１２とを用い、ハイパーテキスト構造の幅優先探索によって作成された木構造差分データ２２０の一例が図９に示される。
【００９７】
この差分データ２２０の各行は、それぞれ１つの差分情報に該当する。１つの差分情報は、「文書ＩＤ」、「操作」、「親文書ＩＤ」及び「他の属性」から構成される。「文書ＩＤ」と「親文書ＩＤ」の組は、木構造において前者が後者の子であることを示す。「操作」は、木構造の更新のための操作内容を示している。
【００９８】
「操作」の内容が「新規」である場合、「親文書ＩＤ」の子として「文書ＩＤ」のノードを木構造に新規に追加する。
【００９９】
「操作」の内容が「更新」である場合は、木構造において「文書ＩＤ」が示す実ノードの親を「親文書ＩＤ」のノードへと変更する。これは、同時に、その「文書ＩＤ」の実ノードと、前回更新タイミングでの親との親子関係を削除することを含意している。例えば、図９の４行目には、文書４の実ノードを文書５の子へと変える「更新」処理が示されているが、これには、前回更新タイミング（図３Ａ）に存在した文書２と文書４の親子関係の削除を伴っている。サーバ１２は、差分情報の「操作」内容が「更新」である場合、その差分情報に示される文書の実ノードの親が、前回更新タイミングでのその文書の実ノードの親と異なっていれば、上記のような親子関係の変更を行う。
【０１００】
なお、差分情報の「操作」内容が「更新」である場合には、文書の内容が変更された場合も含まれる。サーバ１２は、差分情報の「操作」内容が「更新」である場合、差分情報が示す文書の実ノードに親子関係が変更されたか否かを判定し、変更されていなければ、その文書の内容が更新されたものと判断する。
【０１０１】
「操作」の内容が「削除」である場合は、「親文書ＩＤ」の子である「文書ＩＤ」のノードを木構造から削除する。
【０１０２】
なお、この差分データの各行のエントリと、図３Ａ及びＢに示した構造変化との関係は既に説明したのでここでは省略する。
【０１０３】
このように、図９のような木構造差分データ２２０を作成し、サーバ１２に送信すれば、サーバ１２は木構造を更新することが可能となる。
【０１０４】
再び図４に戻り、木構造情報収集装置１６は、このように作成された木構造差分データ２２０を木構造情報提供サーバ１２に送信する（Ｓ１４）。
【０１０５】
木構造情報提供サーバ１２は、その木構造差分データ２２０を受信し（Ｓ２０）、そのデータ２２０に従って、記憶装置１２２に記憶された、差分データ送信元の木構造情報収集装置１６に対応する木構造データを更新する（Ｓ２２）。
【０１０６】
なお、木構造情報収集装置１６は、木構造差分データ２２０をサーバ１２に送信すると、収集後文書テーブル２１０及び収集後リンクテーブル２１２から、次の更新タイミングにおける「前回」文書テーブル２０４及び「前回」リンクテーブル２０６を作成する。すなわち、収集後文書テーブル２１０及び収集後リンクテーブル２１２は、文書及びリンクの過渡的な「状態変化」を示したものなので、その「状態変化」を「状態」へと書き換える。図１０は、その書換の規則を示したものである。図１０の規則では、状態変化が「新規」、「更新」及び「存在」である場合、それを「存在」という状態に変換する。また、状態変化が「削除」又は「非存在」であった場合は、それを「非存在」という状態に変換する。
【０１０７】
また、この変換ではハイパーテキスト構造を幅優先探索で探索した時に求めた最短パスか否かの情報を、リンクテーブルに反映させる。
【０１０８】
以上のような書換により得られた文書テーブル２０４’及びリンクテーブル２０６’は、図１１及び図１２に示すようなものとなる。これらは、図６Ｂ及び図７Ｂのテーブルをそれぞれ書き換えることで作成される。
【０１０９】
以上、本発明の実施形態を説明した。以上の説明から分かるように、本実施形態によれば、木構造情報収集装置１６による木構造差分データ２２０の作成処理の際、木構造の探索に該当する処理としては、ハイパーテキスト構造の幅優先探索を１度行うだけでよいので、木構造を２回探索していた従来技術よりも処理負荷が軽減される。また、前回の木構造データという膨大なデータを保存しておかなくてよいので、装置１６の記憶容量も節約できる。
【０１１０】
以上に説明した木構造情報提供サーバ１２及び木構造情報収集装置１６は、一般的なコンピュータシステムのハードウエアを用いて、本明細書中で説明した各機能モジュールの処理内容を記述したプログラムを実行することで、実現することができる。
【０１１１】
以上に説明した実施形態は、あくまで例示のためのものであり、本発明の範囲内で様々な変形が可能である。例えば、以上の例では、木構造情報提供サーバ１２は、ある顧客企業に対してはその企業の社内ネットワーク内の文書の木構造情報を提供したが、社内文書の木構造をインターネット１０上に公開されている文書群の木構造にマージし、そのマージ結果を提供することもできる。また、以上の例では、木構造差分データ２２０を作成するのに、ハイパーテキスト構造を幅優先探索の規則に従って巡回したが、この代わりに、深さ優先探索規則など他の探索規則を利用した方式でもよい。
【０１１２】
また、以上の説明は、木構造差分データを取得したクライアント装置側での木構造の表示には特に詳しくは触れなかったが、実際にはクライアント装置側での木構造の表示では、木構造を構成する個々の文書の識別のために、木構造表示（ツリー表示）上の各文書のアイコンに対し文書名を表示する。この文書名の表示において注意すべき点がある。
【０１１３】
すなわち、ウェブ文書の文書名としてまず考えられるのが該文書のファイル名或いはＵＲＬであるが、これでは見る人が文書を識別しづらいという問題がある。これに対する解決としては、ウェブ文書のＨＴＭＬ記述に含まれるタイトル(<TITLE>タグで示される)を文書名として表示するという方法がある。タイトルは、一般に見る人に分かりやすいフレーズであることが多いため、これはこれで一つのよい解決策である。しかしながら、この方法には欠点がある。これを、図１３を参照して説明する。
【０１１４】
図１３は、クライアント装置の表示装置に表示されるブラウザ画面４００の一例を示す図である。このブラウザ画面４００には、ウェブ文書を表示する文書表示画面４１０と、ナビゲーションのために文書群の木構造を表示するツリー表示画面４２０を含んでいる。ツリー表示画面４２０には、木構造情報提供サーバ１２が提供する木構造のデータとその差分データに基づき構成された文書の木構造が、ファイルシステムにおけるフォルダやファイルがなす木構造と同様の表示方式で示されている。ファイルシステムのツリーの方はフォルダとファイルとの包含関係を示すのに対し、文書の木構造の場合は文書間のリンク元とリンク先の関係を示すところが違うだけである。このツリー表示画面４２０では、個々の文書はＨＴＭＬ記述中のタイトル文字列を示したアイコン４２２で示される。
【０１１５】
ここで問題になるのは、ツリー表示中の文書としてタイトル文字列を表示したアイコン４２２を表示すると、ウェブ文書表示中でのリンク記述４１２と文言上の食い違いが生じるという点である。ウェブ文書中では、リンク先の文書は、アンカーテキスト(アンカータグ<A href=URL>と</A>との間に挟まれた文字列。表示上では一般に下線などで他と区別される)として示されるが、このアンカーテキストはリンク元の文書の作成者が自由に記述するものであり、そのリンク先文書中に記述されたタイトルとは独立にしているので、両者は一般に一致しない。ツリー表示上の文書名と、実際のウェブ文書に現れるリンク記述が異なると、ユーザはツリー表示上の文書が実際のどのウェブ文書を指しているのかが把握しづらい。
【０１１６】
これはツリー表示の文書名としてタイトルを表示した場合のことであるが、ファイル名を文書名とした場合も同様か、それ以上にユーザにとって分かりづらくなると考えられる。
【０１１７】
これに対し、図１４に示すように、ツリー表示画面４２０Ａ中の各文書のアイコン４２２Ａに示される文書名が、ウェブ文書中のリンク記述４１２と一致していると、ユーザにとってツリー表示画面４２０に示される個々の文書がどの文書であるかを把握しやすいという利点がある。
【０１１８】
ここで、本実施形態のように個々の木構造情報収集装置１６から中央の木構造情報提供サーバ１２に対し木構造の差分データを送信するシステムの場合、図１４のような表示を実現するためには、収集装置１５がウェブ文書中でのリンク記述のアンカーテキストの変化を検出し、その変化をサーバ１２に伝える仕組みが必要となる。このような仕組みについての変形例を以下に説明する。
【０１１９】
なお、この変形例は、システム及び装置の構成は図１及び２に示した上記実施形態のものと同様でよく、収集部１６２や差分データ作成部１６４，木構造更新部１２８の処理内容が異なるだけである。
【０１２０】
この変形例では、ウェブの巡回によるリンク収集の際に収集部１６２が、リンクのＵＲＬだけでなく、それに伴うアンカーテキストも同時に収集し、これをリンクの属性の１つとしてリンクテーブルに記録する。ウェブのサーフィングにおけるユーザにとっては、アンカーテキストは、当該リンクのリンク先の文書を識別するための識別名として機能しているので、この例ではアンカーテキストを当該リンク先文書の「参照名」として取り扱う。すなわち、リンクテーブルには、リンクのアンカーテキストを当該リンクの属性の一つである参照名の値として登録する。そして、差分データ作成部１６４が、前回リンクテーブル２０６中の各リンクの参照名（アンカーテキスト）と、収集によって得られた収集後リンクテーブル２１２中の各リンクの参照名とを比較し、同一のリンクに対する参照名が更新の前後で変化している場合に、この変化を示す情報を木構造差分データ２２０に組み込んで木構造情報提供サーバ１２に送る。
【０１２１】
木構造情報提供サーバ１２は、ユーザに分かりやすいツリー表示を提供するために、各文書の文書名としてその文書へと至るリンクの参照名を示した木構造データ１２４をクライアント装置１８に提供する。ここでは、ハイパーテキスト構造を木構造に展開したため、同一の文書に対し複数の文書からリンクが張られている場合、木構造上にはそれら各リンクに応じた複数のノード（上記実施形態ではそのうち初出のものが実ノード、残りが参照用ノード）ができるが、この変形例では、それら各ノードに対し、それぞれそのノードへのリンクが示すアンカーテキストが参照名として登録されることになる。このような木構造データ１２４を保守するために、木構造更新部１２８は、木構造収集装置１６から受け取った木構造差分データ２２０に基づき木構造データ１２４を更新する際、差分データ２２０中に示される参照名の変更の情報に応じ、木構造データ１２４中の文書の参照名を変更する。
【０１２２】
以上の処理を、例を用いて説明する。ある更新タイミングで図１５Ａに示すような状態であったハイパーテキスト構造が、次の更新タイミングで図１５Ｂに示すようになった場合を例にとる。本変形例ではリンクテーブル２１０に各リンクのアンカーテキストを参照名として登録するので、図１５Ａの状態に対応する前回リンクテーブル２０６ａ（図１６Ａ参照）、及び図１５Ｂの状態に対応する収集後リンクテーブル２１２ａ（図１６Ｂ参照）には「参照名」のデータ項目が設けられている。図１５Ａ及び図１５Ｂの例は、図３Ａ及び図３Ｂの例に対し文書ＩＤ「９」の文書を加えたものであり、前回と今回との差分では、文書ＩＤ「５」の文書から文書ＩＤ「９」のリンクの参照名が更新されている点以外は図３Ａ及び図３Ｂの例と同じである。同様に図１６Ａ及び図１６Ｂに示した各リンクテーブルは、図７Ａ及び図７Ｂの各リンクテーブルに対し、文書ＩＤ「９」の文書へのリンクについてのレコードを追加したものである。なお、図１５Ａ及び図１５Ｂ、図１６Ａ及び図１６Ｂでは、それぞれ図３Ａ及び図３Ｂ、図７Ａ及び図７Ｂとそれぞれ同内容の部分には薄墨を付すことで差を明示している。
【０１２３】
この例では、図１６Ａ及び図１６Ｂから分かるように、文書ＩＤ「５」の文書から「９」の文書へのリンクに対する参照名が、前回の更新タイミングで収集した際は「提案書書式」であったのに対し、今回の収集タイミングで収集した際は「アイデアシート」に変わっている。差分データ作成部１６４は、前回リンクテーブル２０６aと収集後リンクテーブル２１２ａの比較から、そのように参照名が変化している文書「５」から「９」へのリンクを探し出す。そして差分データ作成部１６４は、この参照名の変化の情報を、図１７に示すように、当該リンクのリンク先文書である文書「９」についての差分情報（図１７のテーブルの最下行）として木構造差分データ２２０ａに組み込む。この木構造差分データ２２０ａには、図９に示した木構造差分データ２２０の各データ項目に加え、「参照名」のデータ項目が設けられており、自分に対するリンクの参照名に変化のあった文書の差分情報レコードには、「操作」の値として「更新」が、「参照名」の値として変更後の参照名「アイデアシート」が組み込まれる。
【０１２４】
なお、図１７の例では、煩雑さを避けるために省略したが、木構造差分データ２２０ａのある文書の差分情報の「操作」の値が「新規」である場合には、その文書（または参照用のショートカット・ノード）が新たに木構造に加わったことを意味するので、今回の収集により得たその文書の参照名（アンカーテキスト）をその差分情報レコードに組み込む。また、ある文書の「操作」の値がアンカーテキストの変更以外の理由で「更新」となる場合には、親文書の変更による場合があり、親文書が変われば一般に当該文書を指すアンカーテキストの内容も変わる。したがって、「操作」の値が「更新」となるケース一般で、差分情報レコードに対して今回の収集時に得た当該文書の参照名を組み込むようにする。また、図９の例では、「操作」が「更新」となるのは実ノードに該当する文書の差分情報レコードであったが、この変形例ではアンカーテキストの変更でも「操作」を「更新」とするため、参照用のショートカット・ノードに対応する差分情報レコードについても「操作」が「更新」となる場合が出てくる。
【０１２５】
このような木構造差分データ２２０ａを木構造情報収集装置１６から受信した木構造情報提供サーバ１２は、該差分データ２２０ａに含まれる各文書の差分情報レコードの参照名の値（もしあれば）を、現在の木構造データ１２４中の当該文書のノードの参照名と比較し、両者が相違していれば、木構造データ１２４中の参照名を差分情報レコード中の参照に変更する。なお、木構造差分データ２２０ａ中の「新規」の文書については、その文書を示すノードを「親文書ＩＤ」が示すノードの子ノードとして木構造データ１２４中に作成し、当該文書のノードに対し、木構造差分データ２２０ａ中に示された参照名を設定する。
【０１２６】
このように、本変形例では、木構造情報収集装置１６が文書中のリンクに設定されたアンカーテキストの変化をハイパーテキストのリンク構造の変化と同様に検知し、この変化の情報を木構造差分データ２２０ａに組み込んで木構造情報提供サーバ１２に送信するようにしたので、木構造情報提供サーバ１２は、クライアント装置１８に対し、ウェブ・サーフィングの際のリンクの表示（アンカーテキスト）との整合性の高い文書名を示したツリー表示を提供することができる（図１４参照）。
【０１２７】
なお、この変形例では、木構造の各ノード（文書）に対しアンカーテキストを参照名として表示するので、ウェブ・サーフィングとの整合性が分かりやすい反面、実ノードと参照用のショートカット・ノードとの間で、それらノードが指している文書が同一の実体であるのか否かが分かりにくくなるというデメリットがある。これに対しては、木構造中の文書のノードに対し、アンカーテキストに加え、当該文書のファイル名（或いはＵＲＬ）及び当該文書のＨＴＭＬ記述中のタイトルのうちの少なくとも一方を、参照名として設定し、ツリー表示中では１つの文書に対するそれら複数種類の名称を並べて表示する方法が好適である。このように並べて表示するモードと、アンカーテキストのみを表示するモードの両方をクライアント装置１８のブラウザに設け、モード選択できるようにすることも好適である。なお、この場合、木構造情報収集装置１６は、アンカーテキストの場合と同様の方法で、文書中のリンクのリンク先文書のタイトルを収集し、タイトルに変化がある場合には変化後のタイトルを属性として含んだ当該リンクの差分情報レコードを木構造差分データ２２０ａに組み込むようにすればよい。なお、リンク先の文書のファイル名（或いはＵＲＬ）の方は、巡回リスト２０２を参照して付加すればよい。すなわち、更新タイミングごとに、前回の更新タイミングからの巡回リスト２０２の差分（初回タイミングのみ巡回リスト２０２全体）又は、巡回リスト２０２を木構造情報収集装置１６から木構造情報提供サーバ１２へ提供すれば、木構造データ１２４の各文書のノードに対し、ファイル名やＵＲＬの情報を付加することができる。
【０１２８】
なお、この変形例は、以上に示した処理手順の他に次のような処理手順でも実現可能である。
【０１２９】
この処理手順では、リンクの状態として新たに「更新」という状態を導入し、リンク状態が「更新」の場合についての規定を含んだ差分情報判定テーブルを用いて、木構造差分データを作成する。
【０１３０】
このため木構造情報収集装置１６の収集部１６２は、収集した文書中のリンク記述のアンカーテキストと、これに対応する前回リンクテーブル２０６ａに示されたリンクの参照名との比較に基づき、リンクの参照名が更新されたことを検知すると、図１８に示すように収集後リンクテーブル２１２ａの該当するリンクの状態変化欄に「更新」と設定する。
【０１３１】
このようにして収集部１６２により収集後リンクテーブル２１２ａ等の作成が終わると、次に差分データ作成部１６４が、図１９Ａ〜図１９Ｄに示すような差分情報判定テーブル２０８Ｅ〜２０８Ｈを用いて、差分データを作成する。差分情報判定テーブル２０８Ｅ〜２０８Ｈは、図８Ａ〜Ｄに示した差分情報判定テーブル２０８Ａ〜２０８Ｄにそれぞれ順に対応するものである。図８Ａ〜Ｄの場合と異なるのは、リンク状態変化が「更新」に該当する列だけなので、以下ではその列のケースに該当する場合についてのみ説明する。
【０１３２】
木構造差分データの作成の際のリンク探索において、注目リンクが過去に最短パスであり現在も最短パスの場合は、図１９Ａの差分情報判定テーブル２０８Ｅが参照される。このとき、注目リンクの状態変化が「更新」の場合を考える。この場合、リンク先の文書の状態変化が「新規」や「非存在」となることはあり得ない。一方、リンク先の文書の状態変化が「更新」の場合は、注目リンクの状態変化が「存在」の場合と同様、当該文書の内容が更新されたことを意味すると共に、当該文書の参照名も更新されたことを意味する。そこで、この注目リンクについては、木構造差分データに対し、「操作」の値が「更新」で、参照名が更新後の値となった差分情報を組み込む（図１７参照）。更新後の参照名は、収集後リンクテーブル２１２ａから検索すればよい。また、リンク先の文書の状態変化が「削除」の場合は、文書自体が削除されるので木構造の差分情報は「削除」となる。また、リンク先文書の状態変化が「存在」の場合は、当該文書自体に変化はないが参照名は変更されたと言うことであり、この場合、「操作」が「更新」となり、収集後リンクテーブル２１２ａから検索した当該リンクの参照名を含んだ差分情報を作成する。
【０１３３】
次に、注目リンクが過去に最短パスであったが、現在は最短パスでない場合は、図１９Ｂの差分情報判定テーブル２０８Ｆが参照される。このとき、注目リンクの状態変化が「更新」の場合を考える。この場合、リンク先の文書の状態変化が「新規」や「非存在」となることはあり得ない。一方、リンク先の文書の状態変化が「削除」の場合は、文書自体が削除されるので木構造の差分情報は「削除」となる。また、リンク先の文書の状態変化が「更新」又は「存在」の場合は、注目リンクの状態変化が「存在」の場合と同様、当該文書は参照（ショートカット）ノードとなり、そのリンクは最短パスではなくなる。したがって、操作が「新規」であり、かつ「最短パスでない」という情報を含み、かつ収集後リンクテーブル２１２ａから求めた参照名を含んだ差分情報を作成する。
【０１３４】
次に、注目リンクが過去に最短パスでなかったが、現在は最短パスである場合は、図１９Ｃの差分情報判定テーブル２０８Ｇが参照される。このとき、注目リンクの状態変化が「更新」の場合を考えると、リンク先の文書の状態変化が「非存在」となることはあり得ない。一方、リンク先の文書の状態変化が「削除」の場合は、文書自体が削除されるので木構造の差分情報は「削除」となる。また、リンク先の文書の状態変化が「新規」の場合は、その文書が新たに実ノードとなり、かつ参照名が更新されたということなので、差分情報としては操作が「新規」でかつ「最短パスである」という情報と、更新後の参照名を含んだレコードを作成し木構造差分データに組み込む。また、リンク先の文書の状態変化が「更新」又は「存在」の場合は、参照（ショートカット）ノードであったものが実ノードになったということなので、操作が「更新」であり、かつ「最短パスである」という情報を含み、かつ収集後リンクテーブル２１２ａから求めた参照名を含んだ差分情報を作成する。
【０１３５】
最後に、注目リンクが過去に最短パスでなく、現在も最短パスでない場合は、図１９Ｄの差分情報判定テーブル２０８Ｇが参照される。このとき、注目リンクの状態変化が「更新」の場合を考えると、リンク先の文書の状態変化が「非存在」となることはあり得ない。一方、リンク先の文書の状態変化が「削除」の場合は、文書自体が削除されるので木構造の差分情報は「削除」となる。また、リンク先の文書の状態変化が「新規」の場合は、テーブル２０８Ｇにおけるその組合せに対応するセルの内容は「新規」となる。この場合、リンク先文書を示す参照ノードを、リンク元文書の子として追加する旨と、その参照名とを含んだ差分情報が作成される。また、リンク先の文書の状態変化が「更新」又は「存在」の場合は、リンク先の文書は参照（ショートカット）ノードのままであり、参照名が変化したと言うことなので、操作が「更新」であり、かつ収集後リンクテーブル２１２ａから求めた参照名を含んだ差分情報が作成され、木構造差分データに組み込まれる。
【０１３６】
以上説明した処理により、参照名の変更の情報を含んだ木構造差分データを作成することができる。
【図面の簡単な説明】
【０１３７】
【図１】本発明が適用されるシステムの全体構成の一例を示す図である。
【図２】木構造情報提供サーバ１２及び木構造情報収集装置１６の機能モジュール構成の一例を示す図である。
【図３Ａ】ある社内ネットワーク内の文書群が、前回の木構造更新タイミングにおいて構成していたハイパーテキスト構造を示す図である。
【図３Ｂ】同じ社内ネットワーク内の文書群が、今回の木構造更新タイミングにおいて構成しているハイパーテキスト構造を示す図である。
【図４】本実施形態のシステムにおける木構造データの更新処理の流れを示す図である。
【図５】巡回リストのデータ内容の一例を示す図である
【図６Ａ】前回文書テーブルのデータ内容の一例を示す図である。
【図６Ｂ】収集後文書テーブルのデータ内容の一例を示す図である。
【図７Ａ】前回リンクテーブルのデータ内容の一例を示す図である。
【図７Ｂ】収集後リンクテーブルのデータ内容の一例を示す図である。
【図８Ａ】差分情報判定テーブルの一例を示す図である。
【図８Ｂ】差分情報判定テーブルの一例を示す図である。
【図８Ｃ】差分情報判定テーブルの一例を示す図である。
【図８Ｄ】差分情報判定テーブルの一例を示す図である。
【図９】木構造差分データの一例を示す図である。
【図１０】収集後文書テーブル及び収集後リンクテーブルの書換規則を示す図である。
【図１１】書換により得られた、次回更新タイミングで用いる「前回文書テーブル」のデータ内容に一例を示す図である。
【図１２】書換により得られた、次回更新タイミングで用いる「前回リンクテーブル」のデータ内容に一例を示す図である。
【図１３】木構造を用いた文書ナビゲーションにおける文書名表示の問題を説明するための図である。
【図１４】ユーザにとって分かりやすい文書名表示の例を示す図である。
【図１５Ａ】ある時点でのハイパーテキスト構造を示す図である。
【図１５Ｂ】図１５Ａのハイパーテキスト構造が変更（文書内のアンカーテキストの変更を含む）された後の構造を示す図である。
【図１６Ａ】ユーザにとって分かりやすい文書名表示を実現するための変形例における前回リンクテーブルのデータ内容の一例を示す図である。
【図１６Ｂ】ユーザにとって分かりやすい文書名表示を実現するための変形例における収集後リンクテーブルのデータ内容の一例を示す図である。
【図１７】ユーザにとって分かりやすい文書名表示を実現するための変形例において作成される木構造差分データの一例を示す図である。
【図１８】変形例の別の処理手順で生成される収集後リンクテーブルのデータ内容の一例を示す図である。
【図１９Ａ】変形例の別の処理手順で用いる差分情報判定テーブルの一例を示す図である。
【図１９Ｂ】変形例の別の処理手順で用いる差分情報判定テーブルの一例を示す図である。
【図１９Ｃ】変形例の別の処理手順で用いる差分情報判定テーブルの一例を示す図である。
【図１９Ｄ】変形例の別の処理手順で用いる差分情報判定テーブルの一例を示す図である。
【符号の説明】
【０１３８】
１０  インターネット、１２  木構造情報提供サーバ、１４ａ，１４ｂ，１４ｃ  社内ネットワーク、１６  木構造情報収集装置、１６２  収集部、１６４  差分データ作成部、２００  記憶装置、２０２  巡回リスト、２０４  前回文書テーブル、２０６  前回リンクテーブル、２０８  差分情報判定テーブル、２１０  収集後文書テーブル、２１２  収集後リンクテーブル。
【図１】
2005100331.tif 000003
【図２】
2005100331.tif 000004
【図３Ａ】
2005100331.tif 000005
【図３Ｂ】
2005100331.tif 000006
【図４】
2005100331.tif 000007
【図５】
2005100331.tif 000008
【図６Ａ】
2005100331.tif 000009
【図６Ｂ】
2005100331.tif 000010
【図７Ａ】
2005100331.tif 000011
【図７Ｂ】
2005100331.tif 000012
【図８Ａ】
2005100331.tif 000013
【図８Ｂ】
2005100331.tif 000014
【図８Ｃ】
2005100331.tif 000015
【図８Ｄ】
2005100331.tif 000016
【図９】
2005100331.tif 000017
【図１０】
2005100331.tif 000018
【図１１】
2005100331.tif 000019
【図１２】
2005100331.tif 000020
【図１３】
2005100331.tif 000021
【図１４】
2005100331.tif 000022
【図１５Ａ】
2005100331.tif 000023
【図１５Ｂ】
2005100331.tif 000024
【図１６Ａ】
2005100331.tif 000025
【図１６Ｂ】
2005100331.tif 000026
【図１７】
2005100331.tif 000027
【図１８】
2005100331.tif 000028
【図１９Ａ】
2005100331.tif 000029
【図１９Ｂ】
2005100331.tif 000030
【図１９Ｃ】
2005100331.tif 000031
【図１９Ｄ】
2005100331.tif 000032